Netzwerkdruckerscript bringt Fehler beim verbinden
Ich hab ein Netzwerkdruckerscript geschrieben, wenn die Drucker an sind gibt es damit kein problem. Aber soweit die Drucker aus sind Bekomme ich eine Fehlermeldung, das die Verbindung gescheitert ist.
Kann man das Unterdrücken? Da viele User Schreihend ankommt, das da ein Fehler aufgetreten ist.
Funktionsweise des Scripts, es wird die Regestrie durchgesucht ob der drucker schon vorhanden ist, wenn nicht wird der drucker eingerichtet.
Hier das Script in vereinfachter Form:
edit: Heut ist das erste mal wo der Fehler auch bei angeschalteten drucker kommt, ich werde nachher noch ein screen Nachgeben.
Nachgereicht des Screens:
[Edit: Dani - 16.10.2007 10:58]
Screenshot vom ext. Link in den Beitrag hochgeladen.
Kann man das Unterdrücken? Da viele User Schreihend ankommt, das da ein Fehler aufgetreten ist.
Funktionsweise des Scripts, es wird die Regestrie durchgesucht ob der drucker schon vorhanden ist, wenn nicht wird der drucker eingerichtet.
Hier das Script in vereinfachter Form:
reg query "HKCU\Software\Microsoft\Windows NT\CurrentVersion\Devices" >> "C:\Dokumente und Einstellungen\%username%\drucker.txt"
find /I "\\4108-04\4102-03-HP-swLaserjet" "C:\Dokumente und Einstellungen\%username%\drucker.txt"
IF NOT %ERRORLEVEL% == 0 rundll32 printui.dll,PrintUIEntry /q /in /n "\\4108-04\4102-03-HP-swLaserjet" /q
find /I "\\4108-04\4201-01 PS" "C:\Dokumente und Einstellungen\%username%\drucker.txt"
IF NOT %ERRORLEVEL% == 0 rundll32 printui.dll,PrintUIEntry /q /in /n "\\4108-04\4201-01 PS" /q
find /I "\\4108-04\4201-01 PCL5" "C:\Dokumente und Einstellungen\%username%\drucker.txt"
IF NOT %ERRORLEVEL% == 0 rundll32 printui.dll,PrintUIEntry /q /in /n "\\4108-04\4201-01 PCL5" /q
find /I "\\4108-04\4102-02-HP-Deskjet" "C:\Dokumente und Einstellungen\%username%\drucker.txt"
IF NOT %ERRORLEVEL% == 0 rundll32 printui.dll,PrintUIEntry /q /in /n "\\4108-04\4102-02-HP-Deskjet" /q
find /I "\\4108-04\4102-01-HP-Laserjet" "C:\Dokumente und Einstellungen\%username%\drucker.txt"
IF NOT %ERRORLEVEL% == 0 rundll32 printui.dll,PrintUIEntry /q /in /n "\\4108-04\4102-01-HP-Laserjet" /q
rundll32 printui.dll,PrintUIEntry /y /n "\\4108-04\4102-03-HP-swLaserjet"
del "C:\Dokumente und Einstellungen\%username%\drucker.txt"
edit: Heut ist das erste mal wo der Fehler auch bei angeschalteten drucker kommt, ich werde nachher noch ein screen Nachgeben.
Nachgereicht des Screens:
[Edit: Dani - 16.10.2007 10:58]
Screenshot vom ext. Link in den Beitrag hochgeladen.
Please also mark the comments that contributed to the solution of the article
Content-Key: 71023
Url: https://administrator.de/contentid/71023
Printed on: April 25, 2024 at 02:04 o'clock
3 Comments
Latest comment
Mann, machst du das kompliziert! Ich persönlich mache das Ganze mit dem Tool con2prt aus dem Windows 2000 Resource Kit, welches ich im Netlogon-Share des Domänencontrollers abgelegt habe.
Wenn du dein Script hier behalten willst, versuchs mal mit einer anderen Schreibweise bei der Errorlevel-Abfrage.
Z.B. so:
oder so:
Theoretisch sollten beide Abfragen funktionieren, ich habe es aber schon häufig erlebt, dass die eine Abfrage funktioniert und die andere nicht.
Aber allgemein eine Empfehlung:
Schreib ein neues Script mithilfe des Tools con2prt. Es ist viel einfacher und effektiver als mit diesem printui.dll-Teil.
Wenn du dein Script hier behalten willst, versuchs mal mit einer anderen Schreibweise bei der Errorlevel-Abfrage.
Z.B. so:
IF NOT "%ERRORLEVEL%"=="0"
oder so:
if not errorlevel 0
Theoretisch sollten beide Abfragen funktionieren, ich habe es aber schon häufig erlebt, dass die eine Abfrage funktioniert und die andere nicht.
Aber allgemein eine Empfehlung:
Schreib ein neues Script mithilfe des Tools con2prt. Es ist viel einfacher und effektiver als mit diesem printui.dll-Teil.