Networking with Scripts
VBScript has a few limited networking functions built in that can be used for mapping network drives and connecting to network printers. For advanced network functionality, you’ll have to look into a different scripting language. For more information on networking, see Chapter 7.
The following routines provide access to some of the more useful network-related functions in VBScript.
The following function checks a given drive letter to see if it has
already been mapped. It returns TRUE if the drive
letter has been mapped, FALSE if it hasn’t:
Function AlreadyMapped(DriveLetter)
Set WshShell = WScript.CreateObject("WScript.Shell")
Set WshNetwork = WScript.CreateObject("WScript.Network")
Set AllDrives = WshNetwork.EnumNetworkDrives( )
If Left(DriveLetter,1) <> ":" then DriveLetter = DriveLetter & ":"
ConnectedFlag = False
For i = 0 To AllDrives.Count - 1 Step 2
If AllDrives.Item(i) = UCase(DriveLetter) Then ConnectedFlag = True
Next
AlreadyMapped = ConnectedFlag
End FunctionThis subroutine maps a drive letter to any valid remote path:
Sub MapNetDrive(DriveLetter, RemotePath)
Set WshShell = WScript.CreateObject("WScript.Shell")
Set WshNetwork = WScript.CreateObject("WScript.Network")
WShNetwork.MapNetworkDrive DriveLetter, RemotePath
End SubThis subroutine maps an unused printer port (e.g., LPT3) to any valid remote network printer:
Sub MapNetPrinter(Port, RemotePath) Set WshShell = WScript.CreateObject("WScript.Shell") Set WshNetwork = WScript.CreateObject("WScript.Network") ...Become an O’Reilly member and get unlimited access to this title plus top books and audiobooks from O’Reilly and nearly 200 top publishers, thousands of courses curated by job role, 150+ live events each month,
and much more.
Read now
Unlock full access