Jump to content

Drucker per Script installieren/deinstallieren


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

Empfohlene Beiträge

Hallo Board,

 

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?

 

Vielen Dank für alle Ideen und Antworten.

 

Bastian

Link zu diesem Kommentar

Hallo,

 

ich vermute mal, dass sich hinter "MapPrinter" eine Sub bzw. Function befindet, die z.B. mit AddPrinterConnection arbeitet.

 

Um Drucker zu entfernen würde sich z.B. entspr. RemovePrinterConnection anbieten

 

EDIT:

Wenn es sich um eine Domäne handelt, in der GPPs verwendet werden können, würde es sich auch anbieten, das Ganze per Grouppolicy abzuhandeln.

Link zu diesem Kommentar

Hi Cybquest,

 

das hier hatte ich zu Anfangs noch vergessen mit hinzuzufügen:

 

'## Netzlaufwerke und Drucker

Set oDrives = objNetwork.EnumNetworkDrives

For i = 0 to oDrives.Count - 1 Step 2

strDrives = strDrives & i & ".) " & oDrives.Item(i) & vbCr & " " & i+1 & ".) " & oDrives.Item(i+1) & vbCr

Next

 

 

Set oPrinters = objNetwork.EnumPrinterConnections

For i = 0 to oPrinters.Count - 1 Step 2

strPrinters = strPrinters & i & ".) " & oPrinters.Item(i) & vbCr & " " & i+1 & ".) " & oPrinters.Item(i+1) & vbCr

Next

 

Ich bin leider kein VBS Spezi. Wie kann ich deinen Vorschlag mit in das bestehende Skript einbauen?

Oder wie kann ich das ganze per GPO realisieren?

 

Bastian

Link zu diesem Kommentar

Hallo Cybquest,

 

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

 

WScript.Echo "Check Printers folder NO: " & strUNCPrinter

Wscript.Quit

 

Vielleicht ist das ja was nützliches?!

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...