Problem mit Logon Script (Printer Mapping)
Hallo,
ich muss ein VBS erstellen, dass Drucker löscht und neu erstellt. habe das wie folgt gemacht.
nun, die Drucker werden gelöscht, jedoch nciht neu erstellt. Hat jemand eine Idee warum ? Die msgBox beim Printermapping erscheint nicht.
Anbei der code:
Danke für Eure Hilfe.
ich muss ein VBS erstellen, dass Drucker löscht und neu erstellt. habe das wie folgt gemacht.
nun, die Drucker werden gelöscht, jedoch nciht neu erstellt. Hat jemand eine Idee warum ? Die msgBox beim Printermapping erscheint nicht.
Anbei der code:
'On Error Resume Next
Set objSysInfo = CreateObject("ADSystemInfo")
Set objNetwork = CreateObject("Wscript.Network")
Set objPrinters = objNetwork.EnumPrinterConnections
Set objDrives = objNetwork.EnumNetworkDrives
strUserPath = "LDAP://" & objSysInfo.UserName
Set objUser = GetObject(strUserPath)
For Each strGroup in objUser.MemberOf
strGroupPath = "LDAP://" & strGroup
Set objGroup = GetObject(strGroupPath)
strGroupName = objGroup.CN
Next
'********************************************************************************
'Delete Network Printer
'********************************************************************************
For LOOP_COUNTER = 0 To objPrinters.Count - 1 Step 2
If Left(objPrinters.Item(LOOP_COUNTER +1),2) = "\\" Then
objNetwork.RemovePrinterConnection objPrinters.Item(LOOP_COUNTER +1),True,True
End If
msgbox ( "Delete PRinter" )
Next
'********************************************************************************
'Map Network Printer
'********************************************************************************
Select Case strGroupName
Case "printserveR_user"
objNetwork.AddwindowsPrinterConnection "printserver\prt22"
msgBox ( " Map Printer" )
End Select
msgbox ( "END" )
Please also mark the comments that contributed to the solution of the article
Content-Key: 68256
Url: https://administrator.de/contentid/68256
Printed on: April 23, 2024 at 06:04 o'clock
2 Comments
Latest comment
Moin repa,
dann scheint es doch weniger mit der beabsichtigten Aktion (sei es "Drucker zuweisen" oder "Urlaub streichen") zu tun zu haben, sondern damit, dass der Gruppenname-Vergleich in die Grütze geht.
Ersetze doch mal
...durch....
...und/oder setz doch mal zu Debug-Zwecken ein Wscript.echo strGroupName an eine Dir genehme Stelle.
Außerdem ist es irgendwie merkwürdig, dass Du weiter oben in der "For Each strGroup.."_Schleife zwar alle Gruppen durchwackelst, denen der User angehört, aber nur die letzte davon speicherst.... ist das bei Euch so Vorschrift?
Ich würde die For Each-Klamotte eher um die Seclect Case...end case-Zeilen legen.
Grüße
Biber
dann scheint es doch weniger mit der beabsichtigten Aktion (sei es "Drucker zuweisen" oder "Urlaub streichen") zu tun zu haben, sondern damit, dass der Gruppenname-Vergleich in die Grütze geht.
Ersetze doch mal
...
Select Case strGroupName
Case "printserveR_user"
...
...
Select Case LCase(strGroupName)
Case "printserver_user"
...
...und/oder setz doch mal zu Debug-Zwecken ein Wscript.echo strGroupName an eine Dir genehme Stelle.
Außerdem ist es irgendwie merkwürdig, dass Du weiter oben in der "For Each strGroup.."_Schleife zwar alle Gruppen durchwackelst, denen der User angehört, aber nur die letzte davon speicherst.... ist das bei Euch so Vorschrift?
Ich würde die For Each-Klamotte eher um die Seclect Case...end case-Zeilen legen.
Grüße
Biber