daniel1982mh
Goto Top

Netzwerkdrucker via vbs-Skript löschen - Skript veraltet bzw. fehlerhaft?

Hallo zusammen,


wir haben folgendes Problem: Unsere Nutzer bekommen je nachdem in welchen Raum sie sich befinden, immer den Drucker des entsprechenden Raums verbunden. Zuvor werden alle vorhandenen Netzwerkdrucker gelöscht ( Siehe Skript). Meldet sich ein Benutzer z.B. im Raum 1 an, bekommt dieser den Drucker1 verbunden. Meldet sich der Benutzer in Raum2 an, bekommt dieser den Drucker2 verbunden, usw. Seit der Umstellung auf Server 2012 und Windows 8, tritt bei uns der kuriose Fall auf, dass die Drucker vorher nicht gelöscht werden, was unter Windows 7 und Server 2008 R2 einwandfrei funktioniert hatte. Das heißt, wenn die Benutzer den Raum wechseln, werden ständig die alten Drucker mit geführt, die für diesen Raum nicht gültig sind. Wechselt ein Benutzer am Tag den Raum mehrmals, was uns oft vorkommt, behält der Benutzer all seine alten Drucker. Kennt jemand das Problem? Wie kann man das lösen?


Sub RemoveAllNetworkPrinters()

Dim oWshNetwork
Dim oPrinters
Dim sPrinterName

Set oWshNetwork = WScript.CreateObject("WScript.Network")

on error resume next

oPrinters = EnumNetworkPrinterConnections()

For Each sPrinterName in oPrinters
Call oWshNetwork.RemovePrinterConnection(sPrinterName, true, true)

Next

on error goto 0

End Sub

Content-Key: 216899

Url: https://administrator.de/contentid/216899

Printed on: April 16, 2024 at 09:04 o'clock

Member: bastla
bastla Sep 13, 2013 at 15:44:08 (UTC)
Goto Top
Hallo Daniel1982MH und willkommen im Forum!

Versuch es mit der folgenden Schreibweise:
Set oWshNetwork = WScript.CreateObject("WScript.Network")  
On Error Resume Next
For i = 0 To oWshNetwork.EnumPrinterConnections.Count - 1
    oWshNetwork.RemovePrinterConnection oWshNetwork.EnumPrinterConnections.Item(i)
Next
On Error Goto 0
Grüße
bastla
Member: Daniel1982MH
Daniel1982MH Sep 16, 2013 at 13:48:57 (UTC)
Goto Top
Update: Ich habe die Umgebung mal virtuell nachgestellt. Man erkennt, dass die Verbindung zu den Netzwerkdruckern schon getrennt wird, allerdings wird nach wie vor unter Geräte und Drucker der alte Drucker angezeigt. Das heißt, wenn man ein Dokument drucken will, wird nur der korrekte Drucker angezeigt. Schaut man unter Geräte und Drucker werden auch die alten Drucker angezeigt. Bekommt man das irgendwie weg?