fjoerdman 10 Geschrieben 11. Oktober 2007 Melden Teilen Geschrieben 11. Oktober 2007 Hallo zusammen, ich habe ein vbs Script am laufen, welches die Drucker an den Clients hinterlegt. Jetzt habe ich aufgrund des Scripts das Problem, dass die Drucker ja bei jeder Anmeldung neu verbunden werden und somit geht die Default-Drucker Einstellung bei jeder Neuanmeldung verloren. Wie kann ich in mein Script noch eine Abfrage einbauen, dass den Drucker nur mappt, wenn er noch nicht vorhanden ist? ' map printer HP_DesignJet 500 strPrintShare = "HP-DJ-500" wshNetWork.AddWindowsPrinterConnection "\\" & strPrintServer & "\" & strPrintShare Grüße, Fjoerdman Zitieren Link zu diesem Kommentar
~~~Dexter~~~ 10 Geschrieben 12. Oktober 2007 Melden Teilen Geschrieben 12. Oktober 2007 @fjoerdman Hier hast Du: DruckerName = "\\Server\prt" Set WshNetzwerk = WScript.CreateObject("WScript.Network") Set Drucker = WshNetzwerk.EnumPrinterConnections Vorhanden = False For i = 0 To Drucker.Count - 1 Step 2 If LCase(Drucker.Item(i + 1)) = LCase(DruckerName) Then Vorhanden = True Exit For End If Next If Vorhanden = False Then WshNetzwerk.AddWindowsPrinterConnection DruckerName WshNetzwerk.SetDefaultPrinter(DruckerName) End If Oder das ganze mit WMI. DruckerName = "\\Server\prt" Set WMI = GetObject("winmgmts:") Vorhanden = False For Each Drucker In WMI.ExecQuery("SELECT * FROM Win32_Printer") If Drucker.DeviceID = DruckerName Then Vorhanden = True Exit For End If Next If Vorhanden = False Then WMI.Get("Win32_Printer").AddPrinterConnection(DruckerName) WMI.Get("Win32_Printer.DeviceID='" & DruckerName & "'").SetDefaultPrinter End If Zitieren Link zu diesem Kommentar
Empfohlene Beiträge
Schreibe einen Kommentar
Du kannst jetzt antworten und Dich später registrieren. Falls Du bereits ein Mitglied bist, logge Dich jetzt ein.