rem Option explicit
Dim objGroupList, WSHNetwork
Dim strDomain, strUser
wscript.echo “start”
Set WSHNetwork = CreateObject(“WScript.Network”)
call cleanup ‘ Výmaz starých mapování
strDomain = WSHNetwork.UserDomain
strUser = WSHNetwork.UserName
With GetObject(“WinNT://” & strDomain & “/” & strUser & “, user”)
LoadGroups .Groups
End With
Select Case TRUE
Case objGroupList.Exists(“Management”)
‘ WSHNetwork.MapNetworkDrive “L:”, “\\servername\Calidus Mgt”, False
‘ WSHNetwork.MapNetworkDrive “Y:”, “\\servername\ReleasedData$”, False
Case Else
‘ ‘# Map Y: for all other users
‘ WSHNetwork.MapNetworkDrive “Y:”, “\\servername\ReleasedData$\” & strUser, False
End Select
If objGroupList.Exists(“Administrators”) = True Then
msgbox “administrator”
End If
‘# Map Drives default for all users
‘WSHNetwork.MapNetworkDrive “M:”, “\\servername\commonmech$”, False
‘WSHNetwork.MapNetworkDrive “N:”, “\\servername\database$”, False
‘WSHNetwork.MapNetworkDrive “O:”, “\\servername\cadmin$”, False
‘WSHNetwork.MapNetworkDrive “P:”, “\\servername\public$”, False
wscript.echo “Konec”
Sub LoadGroups (ByVal Groups)
‘———————————————–
‘ Richard L. Mueller
‘ Subroutine to populate dictionary object with group memberships.
‘ objADObject is the user object, with global scope.
‘ objGroupList is a dictionary object, with global scope.
Dim objGroup
Set objGroupList = CreateObject(“Scripting.Dictionary”)
objGroupList.CompareMode = vbTextCompare
For Each objGroup In Groups
objGroupList.Add objGroup.name, True
Next
End Sub
Sub Cleanup ‘–> any persistent mapping from a previous session
Dim pause, colDrives, i
pause = False
On Error Resume Next
colDrives = array _
(“F:”,”L:”,”M:”,”N:”,”O:”,”P:”,”Q:”,”S:”,”Y:”,”Z:”)
For i = 0 to UBound(colDrives)
WSHNetwork.RemoveNetworkDrive colDrives(i), True, True
If err.Number = 0 Then pause = True Else err.Clear
Next
If Cbool(pause) Then wsh.sleep 750
On Error Goto 0
End Sub