um unseren Benutzern die Arbeit so leicht wie möglich zu machen (und auch uns Admins zu entlasten) installieren wir die Netzwerkdrucker bei allen Usern über ein VBS-Logonscript.
Der Befehl sieht so aus:
strOU = "Drucker_D01"
strOU_STD = "Drucker_D01_Std"
strUNC = "\\PrintSRV02\D01"
If objGroupList.Exists(strOU) or objGroupList.Exists(strOU_STD) Then
MapPrinter strUNC
If objGroupList.Exists(strOU_STD) Then
objNetwork.SetDefaultPrinter strUNC
End If
End If
Ist der betroffene Benutzer in der entsprechenden OU, bekommt er den Drucker auf seiner Maschine installiert.
Das ganze funktioniert auch einwandfrei.
Jetzt haben wir aber uns aber einen neuen Printserver installiert, den PrintSRV02. Das Script habe ich entsprechend angepasst.
Wie kann ich jetzt aber in diesem Script auf allen Machinen die Netzwerkdrucker deinstallieren oder löschen, die noch auf PrintSRV01 zeigen?
danke für den Vorschlag.
Wenn ich mein Skript aber durch deine Zeilen ergänze, bekomme ich immer einen Fehler: End erwartet am Ende des gesamten Skripts. Da steht End Sub.
So sieht mein Skript jetzt aus, was leider nicht funzt:
strUNC = "\\PrintSRV02\D01"
strUNCAlt = "\\PrintSRV01\D01"
If objGroupList.Exists(strOU) or objGroupList.Exists(strOU_STD) Then
objNetwork.RemovePrinterConnection strUNCAlt
MapPrinter strUNC
strOU = "Drucker_D01"
strOU_STD = "Drucker_D01_Std"
strUNC = "\\PrintSRV02\D01"
If objGroupList.Exists(strOU) or objGroupList.Exists(strOU_STD) Then
MapPrinter strUNC
If objGroupList.Exists(strOU_STD) Then
objNetwork.SetDefaultPrinter strUNC
End If
End If
Wenn ich aber ein End If in zeile 6 einfüge, meckert er über strUNCAlt = "\\PrintSRV01\D01" Variable ist nicht definiert.
Was ich hierzu aber auch noch gefunden habe:
1. Preparation RemovePrinterConnection
Option Explicit
Dim objNetwork
Dim strUNCPrinter
strUNCPrinter = "\\alan\Epson"
Set objNetwork = CreateObject("WScript.Network")
objNetwork.AddWindowsPrinterConnection strUNCPrinter
WScript.Echo "Check the Printers folder for : " & strUNCPrinter
WScript.Quit
2. Delete the printer icon with RemovePrinterConnection
Option Explicit
Dim objNetwork, strUNCPrinter
strUNCPrinter = "\\LittleServer\win2pdf"
Set objNetwork = CreateObject("WScript.Network")
' Section which removes the network printer
objNetwork.RemovePrinterConnection strUNCPrinter