Per Batch abfragen ob ein freigegebener Drucker vollständig verbunden ist
Hallo,
ich hätte folgende (hoffentlich) kurze Frage.
Gibt es eine Möglichkeit in einer Batch-Datei zu Prüfen ob ein auf dem Printserver freigegebener Drucker auf meinem PC erfolgreich verbunden ist?
Mit Laufwerken klappt das ziemlich einfach z.B.: "if exist X: "
Ich dachte jetzt an eine ähnliche Lösung z.B.: "if exist \\PrintServer\Drucker1"
Aber das funktioniert so leider nicht. Selbst wenn würde das aber auch eher Fragen ob die Freigabe auf dem PrintServer vorhanden ist, nicht ob sie auch bei mir eingerichtet ist ...
Ich wollte ein Batch basteln welches vor dem Start eines Programmes prüft ob bestimmter Drucker vorhanden und auch vollständig verbunden ist. (Drucker1 an PrintServer)
Das Programm ist nämlich leider sehr penibel, die Drucker werden beim Start des Programms abgefragt und ins Programm eingebunden, wenn der Drucker zu diesem Zeitpunkt nicht da ist startet das Programm halt ohne diesen Drucker. Wenn der Drucker 2 Sekunden später fertig da ist interessiert das Programm das nicht mehr. Das schießt aber unheimlich gerne an einigen Stellen Einstellungen zu eben genau diesem Drucker weg. Das wiederrum wird langsam nervig
Hat hier jemand vielleicht eine Idee?
Mfg Balgor
ich hätte folgende (hoffentlich) kurze Frage.
Gibt es eine Möglichkeit in einer Batch-Datei zu Prüfen ob ein auf dem Printserver freigegebener Drucker auf meinem PC erfolgreich verbunden ist?
Mit Laufwerken klappt das ziemlich einfach z.B.: "if exist X: "
Ich dachte jetzt an eine ähnliche Lösung z.B.: "if exist \\PrintServer\Drucker1"
Aber das funktioniert so leider nicht. Selbst wenn würde das aber auch eher Fragen ob die Freigabe auf dem PrintServer vorhanden ist, nicht ob sie auch bei mir eingerichtet ist ...
Ich wollte ein Batch basteln welches vor dem Start eines Programmes prüft ob bestimmter Drucker vorhanden und auch vollständig verbunden ist. (Drucker1 an PrintServer)
Das Programm ist nämlich leider sehr penibel, die Drucker werden beim Start des Programms abgefragt und ins Programm eingebunden, wenn der Drucker zu diesem Zeitpunkt nicht da ist startet das Programm halt ohne diesen Drucker. Wenn der Drucker 2 Sekunden später fertig da ist interessiert das Programm das nicht mehr. Das schießt aber unheimlich gerne an einigen Stellen Einstellungen zu eben genau diesem Drucker weg. Das wiederrum wird langsam nervig
Hat hier jemand vielleicht eine Idee?
Mfg Balgor
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 660646
Url: https://administrator.de/forum/per-batch-abfragen-ob-ein-freigegebener-drucker-vollstaendig-verbunden-ist-660646.html
Ausgedruckt am: 22.01.2025 um 04:01 Uhr
5 Kommentare
Neuester Kommentar
Moin,
muss es denn wieder Uralt-Batch sein? PowerShell macht das doch viel eleganter...
Siehe hier: https://devblogs.microsoft.com/scripting/use-powershell-to-test-remote-p ...
VG
muss es denn wieder Uralt-Batch sein? PowerShell macht das doch viel eleganter...
Siehe hier: https://devblogs.microsoft.com/scripting/use-powershell-to-test-remote-p ...
VG
evtl hilft das (Powershell)
(Get-WMIObject -Class Win32_Printer).DetectedErrorState
0 = Unbekannt
1 = Anderer
2 = Kein Fehler, Drucker angehalten oder anderweitig abgeschaltet
3 = Wenig Papier
4 = Kein Papier
5 = Wenig Toner
6 = Kein Toner
7 = Klappe geöffnet
8 = Papierstau
9 = Offline
10 = Service
11 = Ausgabeschacht voll
(Get-WMIObject -Class Win32_Printer).DetectedErrorState
0 = Unbekannt
1 = Anderer
2 = Kein Fehler, Drucker angehalten oder anderweitig abgeschaltet
3 = Wenig Papier
4 = Kein Papier
5 = Wenig Toner
6 = Kein Toner
7 = Klappe geöffnet
8 = Papierstau
9 = Offline
10 = Service
11 = Ausgabeschacht voll
Schau mal, ob das weiterhilft
wmic Printer WHERE "Name like 'H%' " GET Name, Status, DetectedErrorState
H = zeige alle Drucker an, deren Namen mit H beginnt
Beispiel:
C:\WINDOWS\system32>wmic Printer WHERE "Name like 'H%' " GET Name, Status, DetectedErrorState
DetectedErrorState Name Status
0 HP Photosmart 5520 series (Netzwerk) Unknown
wmic Printer WHERE "Name like 'H%' " GET Name, Status, DetectedErrorState
H = zeige alle Drucker an, deren Namen mit H beginnt
Beispiel:
C:\WINDOWS\system32>wmic Printer WHERE "Name like 'H%' " GET Name, Status, DetectedErrorState
DetectedErrorState Name Status
0 HP Photosmart 5520 series (Netzwerk) Unknown