43344
01.03.2007, aktualisiert am 02.03.2007
9769
2
0
Standarddrucker beim Logon abfragen und setzen
bei Benutzern mit ständig wechselndem Arbeitsplatz
Morgen,
ich habe hier das merkwürdige Phänomen, dass Benutezr, die sich ständig an wechselnden Plätzen anmelden nach JEDER Systemanmeldung an JEDEM PC aufs Neue ihren Standarddrucker definieren müssen, da sich dieser auf den auf jedem PC installierten FreePDF Writer stellt.
Gedacht hatte ich mir eine Abfrage der bekannten Drucker beim Logon mittels prnmngr.vbs. Das Tool liefert mir eine Liste der Drucker, aber eben nur eine Liste. Wie kann ich diese Liste so verarbeiten, dass überprüft wird, ob ein Drucker an LPT1, bzw. USB installiert ist - sollte dies der Fall sein, diesen zum Standard machen - wenn nicht, überprüfen ob ein localport eingerichtet ist und dann diesen zum Standard machen??????
Vielleicht fällt dem Bieber ja wieder was feines ein ???? ;)
Grüße vom Dorf ...
ich habe hier das merkwürdige Phänomen, dass Benutezr, die sich ständig an wechselnden Plätzen anmelden nach JEDER Systemanmeldung an JEDEM PC aufs Neue ihren Standarddrucker definieren müssen, da sich dieser auf den auf jedem PC installierten FreePDF Writer stellt.
Gedacht hatte ich mir eine Abfrage der bekannten Drucker beim Logon mittels prnmngr.vbs. Das Tool liefert mir eine Liste der Drucker, aber eben nur eine Liste. Wie kann ich diese Liste so verarbeiten, dass überprüft wird, ob ein Drucker an LPT1, bzw. USB installiert ist - sollte dies der Fall sein, diesen zum Standard machen - wenn nicht, überprüfen ob ein localport eingerichtet ist und dann diesen zum Standard machen??????
Vielleicht fällt dem Bieber ja wieder was feines ein ???? ;)
Grüße vom Dorf ...
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-Key: 52924
Url: https://administrator.de/contentid/52924
Ausgedruckt am: 28.03.2024 um 18:03 Uhr
2 Kommentare
Neuester Kommentar
Hallo Stylewalker!
Dürfte ich als Nicht-Bi(e)ber es auch versuchen? Vielleicht wäre ja das etwas für Dich:
Für jede Vorgabe eines Ports kannst Du mit einer "If"-Zeile (wie oben zB für "LPT1:" und "USB%") versuchen, einen daran angeschlossenen Drucker als Standarddrucker zu setzen und bei Erfolg das Script beenden (das "WScript.Echo" steht vorrangig zum Testen drinnen und kann samt Doppelpunkt entfernt werden).
Das %-Zeichen fungiert als Wildcard, sodass zB "LPT%" nach jedem Port, dessen Name mit "LPT" beginnt, sucht. Bei mehreren gefundenen Einträgen wird der letzte aus der Liste als Standarddrucker gesetzt.
Ein Suchbegriff "%" schließlich steht für "totale Verzweiflung " - in anderen Worten: "Nimm den erst- (oder genauer: letzt-) besten installierten Drucker!"
Grüße
bastla
Dürfte ich als Nicht-Bi(e)ber es auch versuchen? Vielleicht wäre ja das etwas für Dich:
'SetDefaultPrinterByPort.vbs
strComputer = "."
Set objWMIService = GetObject("winmgmts:\\" & strComputer & "\root\CIMV2")
If CheckAndSet("LPT1:") Then WScript.Echo "LPT": WScript.Quit
If CheckAndSet("USB%") Then WScript.Echo "USB": WScript.Quit
r = CheckAndSet("%"): WScript.Echo "Irgendeiner ..."
Function CheckAndSet(sPort)
Set colItems = objWMIService.ExecQuery( _
"SELECT * FROM Win32_Printer WHERE PortName LIKE '" & sPort & "'",,48)
For Each objItem in colItems
objItem.SetDefaultPrinter()
Next
Set colItems = objWMIService.ExecQuery( _
"SELECT * FROM Win32_Printer WHERE PortName LIKE '" & sPort & "'",,48)
Found = False
For Each objItem in colItems
If objItem.Default Then Found = True
Next
CheckAndSet = Found
End Function
Das %-Zeichen fungiert als Wildcard, sodass zB "LPT%" nach jedem Port, dessen Name mit "LPT" beginnt, sucht. Bei mehreren gefundenen Einträgen wird der letzte aus der Liste als Standarddrucker gesetzt.
Ein Suchbegriff "%" schließlich steht für "totale Verzweiflung " - in anderen Worten: "Nimm den erst- (oder genauer: letzt-) besten installierten Drucker!"
Grüße
bastla