Jump to content

NT & XP: Standarddrucker zurücksetzen Script


Der letzte Beitrag zu diesem Thema ist mehr als 180 Tage alt. Bitte erstelle einen neuen Beitrag zu Deiner Anfrage!

Empfohlene Beiträge

Hallöchen,

ich mal wieder mit einer Frage an die Scriptingprofis:

 

Wir setzen eine Branchensoftware ein, die fälschlicherweise den Standarddrucker verändert, wenn die Anwender z.B. von dem Netzwerkdrucker auf FreePDF umstellen.

 

Nun möchte ich den betroffenen usern ein Script an die Hand geben, dass den Stndarddrucker wieder zurückstellt.

 

Unsere Netzwerkdrucker sind größtenteils über zentrale Druckserver (Linux und W2K3) angebunden. Einige wenige sind lokal auf Standard IP-Ports installiert.

 

Entsprechend werden die Drucker dann auch z.B. "Monolaser_Versand an PRINTSRV02"

oder "Farblaser_Verwaltung an PRINTSRV01" angezeigt.

 

Im Zuge meiner Recherche bin ich auf diesen Beitrag gestoßen: https://www.mcseboard.de/windows-vista-forum-55/default-drucker-per-batch-datei-101096.html?highlight=Standarddrucker

 

Hier die Codeauszüge von lefg, auf die ich mich beziehe:

'VBS-Code
Dim net
Set net = CreateObject("WScript.Network")    
net.SetDefaultPrinter "HP LaserJet 5"

 

Auch als Batching hat lefg eine Lösung:

rundll32 printui.dll,PrintUIEntry /y /n "Drucker"

 

Nun besteht das Problem, dass die Netzwerkdrucker, die nicht als lokale IP-Ports gebunden sind, nicht von den Scripten erfasst werden.

Sprich "Monolaser_Versand an PRINTSRV02" führt zu einem Fehler, ebenso wenn ich als Drucker im Script "Monolaser_Versand" eintrage.

 

Ich bekomme dann die Fehlermeldung, dass der Drucker nicht existiert oder der Server nicht erreichbar. Aber beides ist definitiv nicht der Fall.

 

Wer kennt das Problem und hat ggf. einen Workaround?

Link zu diesem Kommentar

Hi,

 

nur mal so eine Idee:

Wieso lässt du die Drucker denn nicht alle übers Logonscript verbinden, dann sind die Namen auch garantiert überall gleich und du kannst die oben genannten Scripte nutzen.

 

Ich lösche im Logonscript erstmal alle Drucker auf den PCs und verbinde dann die jeweils benötigten Drucker (Abfrage auf Gruppen basierend).

 

Gruß

Chris

Link zu diesem Kommentar

@angoletti1:

Ich hatte, glaube ich, oben kurz beschrieben, dass eine Anwendung den Standarddrucker im laufenden Betrieb verändert.

Wenn z.B. ein Lieferschein als PDF generiert werden soll und der Anwender wählt den Drucker "freepdfXP" aus, dann wird dieser Drucker in Windows ab sofort zum Standarddrucker.

Und dies soll dann als Workaround, bis der Hersteller das gebugfixed hat, per Script wieder zurückgestellt werden.

 

Lösung entwickelt, danke an alle, insbes. lefg und Hanghuhn, dein Tip mit UNC-Pfad war es dann!

Ich habe das dann entsprechend wegen universeller Einsetzbarkeit mit Variablen ausgestattet und eine abschließende Popupmeldung eingebaut.

 

' Script zum Rücksetzen des Standarddruckers für Windows NT und XP
'
' How to:
' Bitte in Zeile 25 den Druckernamen eintragen. Der entsprechende
Drucker muss auf dem System schon installiert sein!
'Netzwerkdrucker bitte folgendermaßen eintragen:
\\<Servername>\<Druckername> .'
'Variablen definieren
Dim net
Dim defprinter
Dim copyright
defprinter = "\\<Servername>\<Druckername>" ' <-- Hier den Druckernamen
eintragen, Anführungsstriche stehen lassen.
copyright = "Scriptversion 1.0, 01|2007," & VbCr & "Erstellt von
Markus Kafurke, www.marka-it.net" & VbCr & "Publiziert im: www.mcseboard.de"
Set net = CreateObject("WScript.Network")
net.SetDefaultPrinter defprinter
Set Shell = CreateObject("WScript.Shell")
Meldung = "Folgender Drucker wurde erfolgreich als Standarddrucker
eingerichtet: '" &VbCr & defprinter &"'"& VbCr & VbCr & copyright
Shell.Popup Meldung, 10, "Standarddrucker geändert", vbOKOnly +
vbinformationGgf.

 

speichern als *.vbs ;)

Link zu diesem Kommentar
Der letzte Beitrag zu diesem Thema ist mehr als 180 Tage alt. Bitte erstelle einen neuen Beitrag zu Deiner Anfrage!

Schreibe einen Kommentar

Du kannst jetzt antworten und Dich später registrieren. Falls Du bereits ein Mitglied bist, logge Dich jetzt ein.

Gast
Auf dieses Thema antworten...

×   Du hast formatierten Text eingefügt.   Formatierung jetzt entfernen

  Only 75 emoji are allowed.

×   Dein Link wurde automatisch eingebettet.   Einbetten rückgängig machen und als Link darstellen

×   Dein vorheriger Inhalt wurde wiederhergestellt.   Editor-Fenster leeren

×   Du kannst Bilder nicht direkt einfügen. Lade Bilder hoch oder lade sie von einer URL.

×
×
  • Neu erstellen...