ghofmann
Goto Top

Drucker aus Systemsteuerung verschwunden, Idee: Spooler-Neustart per Skript

Folgendes Problem: auf einem Win-2000-Server sind mehrere Drucker freigegeben, diverse Clients drucken darüber. Nun kommt es ca. einmal am Tag vor, dass plötzlich auf dem Server aus der Druckerumgebung alle Drucker verschwunden sind und die Clients können dann natürlich nicht mehr drucken.

Manchmal sieht man dann in Systemsteuerung -> Dienste, dass der Dienst "Druckerwarteschlange" nicht mehr aktiv ist, in anderen Fällen ist der Dienst noch aktiv, obwohl alle Drucker verschwunden sind. Im Ereignisprotokoll taucht immer der Event 7031 "...Dienst wurde unerwartet beendet.." auf.

Ein "net stop spooler" + "net start spooler" behebt das Problem dann jeweils erstmal.

Da schon mit dem Austausch von Druckertreibern experimentiert wurde, glaub ich nicht so recht, dass ich die eigentliche Ursache finden und beheben kann, sondern möchte es jetzt mit einem Workaround versuchen und mir ein Skript schreiben, dass in einer Endlosschleife jede Minute prüft, ob in der Druckerumgebung gerade Drucker sichtbar sind. Ist dies nicht der Fall, soll Spooler neu gestartet werden.

Wie könnte ich das machen? Ich dachte an AutoIt aber da find ich keine Funktion zum Auflisten aller Drucker.

Content-Key: 34671

Url: https://administrator.de/contentid/34671

Ausgedruckt am: 28.03.2024 um 17:03 Uhr

Mitglied: geTuemII
geTuemII 22.06.2006 um 16:17:27 Uhr
Goto Top
Warum gehst du nicht über die Diensteigenschaften:

Register Wiederherstellen --> Erster Fehlschlag: Dienst neu starten --> Zweiter Fehlschlag: Dienst neu starten --> Zähler nach einem Tag zurücksetzen --> Dienst nach 0 Minuten neu starten. So sollte der eine Fehler am Tag zuverlässig abgefangen werden, auf der anderen Seite merkst du auch, wenn der Dienst völlig aus dem Ruder läuft.

Das alles unterdrückt aber natürlich nur die Symptome, ersetzt aber keine Fehleranalyse.

HTH geTuemII
Mitglied: ghofmann
ghofmann 22.06.2006 um 16:36:16 Uhr
Goto Top
Sorry, vergaß das zu erwähnen: die Wiederherstellen-Optionen sind schon auf Neustart des Dienstes gesetzt, bloß das greift halt nicht in jedem Fall. Ich hatte schon die Konstellation, dass Drucken nicht mehr ging, die Drucker verschwunden waren und der Dienst halt *trotzdem* noch den Status "gestartet" hatte.