Set WshNetwork = CreateObject("WScript.Network")
Set WshShell = WScript.CreateObject("WScript.Shell")
Set WshSysEnv = WshShell.Environment("Process")
Set objFSO = CreateObject("Scripting.FileSystemObject")
SysDrive = WshShell.ExpandEnvironmentStrings("%SYSTEMDRIVE%")
SysRoot = WshShell.ExpandEnvironmentStrings ("%SystemRoot%")
UserProfile = WshShell.ExpandEnvironmentStrings ("%UserProfile%")
'Automatically find the domain name
Set objDomain = getObject("LDAP://rootDse")
DomainString = objDomain.Get("dnsHostName")
'Grab the user name
UserString = WshNetwork.UserName
Set objADSysInfo = CreateObject("ADSystemInfo")
Set objCurrentUser = GetObject("LDAP://" & objADSysInfo.UserName)
'Bind to the user object to get user name and check for group memberships later
Set UserObj = GetObject("WinNT://" & DomainString & "/" & UserString)
'Grab the computer name for use in add-on code later
strComputer = WshNetwork.ComputerName
'Map drives for everyone
WshNetwork.MapNetworkDrive "L:", "\\server\share$",True
WshNetwork.MapNetworkDrive "T:", "\\server\share$",True
WshNetwork.MapNetworkDrive "O:", "\\server\share$",True
'Map drives for user
Select Case UserString
Case "User"
WshNetwork.MapNetworkDrive "P:", "\\server\share$",True
WshNetwork.MapNetworkDrive "V:", "\\server\shares$",True
WshNetwork.SetDefaultPrinter "\\server\Printer"
WshNetwork.AddWindowsPrinterConnection "\\server\Printer"
WshNetwork.AddWindowsPrinterConnection "\\server\Printer"
'add a shortcut to the desktop for this Users only
Set objFSO = CreateObject("Scripting.FileSystemObject")
strDsk = WshShell.SpecialFolders("Desktop")
' What is the label for the shortcut?
strshortcut = strDsk & "\My User Folder.lnk"
If Not objFSO.FileExists(strshortcut) Then
SET oUrlLink = WshShell.CreateShortcut(strshortcut)
' What is the path to the shared folder?
oUrlLink.TargetPath = "\\server\share"
oUrlLink.Save
End If
Case "User2"
do some stuff
End Select
'Now rename the mapped drives to a meaningful name
'===========================================================================================================
Dim DriveArray( 2, 1 )
DriveArray( 0, 0 ) = "L:\"
DriveArray( 0, 1 ) = "Some nice name"
DriveArray( 1, 0 ) = "M:\"
DriveArray( 1, 1 ) = "Some nice name"
DriveArray( 2, 0 ) = "N:\"
DriveArray( 2, 1 ) = "Some nice name"
Set WshShell = CreateObject("Shell.Application")
For remap = 0 to UBound(DriveArray)
WshShell.NameSpace(DriveArray(remap,0)).Self.Name = DriveArray(remap,1)
Next