Microsoft KB Archive/263226

= How to Add a Default Printer Using a Visual Basic Script =

Article ID: 263226

Article Last Modified on 3/27/2007

-

APPLIES TO


 * Microsoft Windows 2000 Server
 * Microsoft Windows 2000 Advanced Server
 * Microsoft Windows 2000 Professional Edition
 * Microsoft Windows 2000 Datacenter Server
 * Microsoft Windows NT Server 3.51
 * Microsoft Windows NT Workstation 4.0 Developer Edition

-



This article was previously published under Q263226





SUMMARY
This article shows you how to use a Visual Basic script to add a printer and make it the default printer.



MORE INFORMATION
The Windows Printer Mapping on Terminal Service cannot automatically map a printer if the printer is not locally attached to an LPT, COM, or USB port.

To map network printers for use in Windows 2000 Terminal Services and Windows NT 4.0 Terminal Server, follow these steps:   In the following script, replace PrinterDriver with the name of the driver you are adding and \\Server\Printer with the name of the shared printer and server: Set WshNetwork = CreateObject(&quot;WScript.Network&quot;) PrinterPath = &quot;\\Server\Printer&quot; PrinterDriver = &quot;PrinterDriver&quot; WshNetwork.AddWindowsPrinterConnection PrinterPath, PrinterDriver WshNetwork.SetDefaultPrinter &quot;\\Server\Printer&quot;  Save and execute the script in a Visual Basic (VBS) file.

NOTE: The parameter PrinterDriver must have the exact name of the driver as it appears in the left column of the Ntprint.inf file.

For example, if you want to install a Cannon Bubble-Jet BJ-230, then the line in the script should read PrinterDriver = &quot;Canon Bubble-Jet BJ-230&quot;.

Excerpt from ntprint.inf: ++++++++++++++++++ &quot;Canon Bubble-Jet BJ-230&quot; = CNBJ230.GPD, CanonCanon_Bubble-JeFF70,Canon_Bubble-Jet_BJ-230 NOTE: Windows NT 4.0 Terminal Server does not have Windows Scripting Host by default. Windows Scripting Host must be installed first to execute the scripts.

To add a different printer for each user that logs on to Terminal Services, follow these steps:   In the following script, replace PrinterDriver with the names of the drivers you are adding. Replace UsernameX with the name of the user, and add more sections as needed: Set WshNetwork = CreateObject(&quot;WScript.Network&quot;)

Select Case WshNetWork.UserName

Case &quot;Username1&quot; PrinterPath = &quot;\\Server\Printer1&quot; PrinterDriver = &quot;PrinterDriver&quot; WshNetwork.AddWindowsPrinterConnection PrinterPath, PrinterDriver

WshNetwork.SetDefaultPrinter &quot;\\Server\Printer1&quot; Case &quot;Username2&quot; PrinterPath = &quot;\\Server\Printer2&quot; PrinterDriver = &quot;PrinterDriver&quot; WshNetwork.AddWindowsPrinterConnection PrinterPath, PrinterDriver

WshNetwork.SetDefaultPrinter &quot;\\Server\Printer1&quot; End Select  Set the script to run each time the user logs on to Terminal Services (use Logon Script or Group Policy) and end select.</ol>

<div class="references_section">