Home > Articles > Home & Office Computing > Microsoft Windows Vista & Home Server

  • Print
  • + Share This
This chapter is from the book

This chapter is from the book

Programming the WshNetwork Object

WshNetwork is a generic name for an object that enables you to work with various aspects of the Windows network environment. You can determine the computer name and username, you can enumerate the mapped network drives, you can map new network drives, and more. The next couple of sections show you how to work with this object.

Referencing the WshNetwork Object

WshNetwork refers to the Network object exposed via the Automation interface of WScript. This means you use CreateObject to return this object, as shown here:

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

From here, you use the WshNetwork variable to access the object's properties and methods.

WshNetwork Object Properties

The WshNetwork object supports three properties:

ComputerName

Returns the network name of the computer

UserDomain

Returns the network domain name of the current user

UserName

Returns the username of the current user

Mapping Network Printers

The WshNetwork object supports several methods for working with remote printers. For example, to map a network printer to a local printer resource, use the WshNetwork object's AddWindowsPrinterConnection method:

   WshNetwork.AddPrinterConnection strPrinterPath

WshNetwork

The WshNetwork object

strPrinterPath

The UNC path to the network printer

Here's an example:

Set objWshNetwork = WScript.CreateObject("WScript.Network")
objWshNetwork.AddWindowsPrinterConnection "\\ZEUS\printer"

To remove a remote printer mapping, use the WshNetwork object's RemovePrinterConnection method:

   WshNetwork.RemovePrinterConnection strPrinterPath [, bForce] [, bUpdateProfile]

WshNetwork

The WshNetwork object

strPrinterPath

The UNC path to the network printer

bForce

If True, the resource is removed even if it is currently being used

bUpdateProfile

If True, the printer mapping is removed from the user's profile

Here's an example:

Set objWshNetwork = WScript.CreateObject("WScript.Network")
objWshNetwork.RemovePrinterConnection "\\ZEUS\inkjet"

Mapping Network Drives

The WshNetwork object supports several methods for mapping network drives. To map a shared network folder to a local drive letter, use the WshNetwork object's MapNetworkDrive method:

   WshNetwork.MapNetworkDrive strLocalName, strRemoteName, [bUpdateProfile], [strUser], 

      ccc.gif
   [strPassword]

WshNetwork

The WshNetwork object

strLocalName

The local drive letter to which the remote share will be mapped (for example, F:)

strRemoteName

The UNC path for the remote share

bUpdateProfile

If True, the drive mapping is stored in the user's profile

strUser

Use this value to enter a username that might be required to map the remote share (if you're logged on as a user who doesn't have the proper permissions, for example)

strPassword

Use this value to enter a password that might be required to map the remote drive

Here's an example:

Set objWshNetwork = WScript.CreateObject("WScript.Network")
objWshNetwork.MapNetworkDrive "Z:", "\\ZEUS\SharedDocs"

To remove a mapped network drive, use the WshNetwork object's RemoveNetworkDrive:

   WshNetwork.RemoveNetworkDrive strName, [bForce], [bUpdateProfile]

WshNetwork

The WshNetwork object.

strName

The name of the mapped network drive you want removed. If you use a network path, all mappings to that path are removed; if you use a local drive letter, only that mapping is removed.

bForce

If True, the resource is removed even if it is currently being used.

bUpdateProfile

If True, the network drive mapping is removed from the user's profile.

Here's an example:

Set objWshNetwork = WScript.CreateObject("WScript.Network")
objWshNetwork.RemoveNetworkDrive "Z:"
  • + Share This
  • 🔖 Save To Your Account