Many modern enterprise networks are far from the ideal systems that network engineers dream about. More often than not, these real-world systems are an amalgamation of different networking technologies built up over years of continual IT upgrades, or they are hastily assembled from the individual networks of merging corporations. Such systems can complicate even the most common task, such as printing.

TechRepublic member Evileyejoe recently asked for advice about a similar problem in our Technical Q&A. Once a year, one of Evileyejoe’s users needs to print from an old DOS application to a network printer. The user is running Windows 2000, and both she and the printer are connected to a Windows NT/Novell network. “How can I get an MS DOS program to print to a network printer?” Evileyejoe writes. “Someone suggested capturing a printer to the LPT1 port, but I don’t know how to do this.” TechRepublic members were quick to offer advice, and here’s what they had to say.

Take the direct approach
Member Durwin suggests printing directly to the printer share by using the following syntax at a command prompt:
print /d:\\<printserver>\<sharename> <drive>:\<path>\<filename>

Because Novell NetWare’s CAPTURE command is not supported in Windows NT 4.0, use the following command to map the LPT port to a Novell NetWare printer queue:
net use lpt<x> \\server\queue

If the LPT port is redirected successfully, the message “The command completed successfully” should appear. To disconnect persistent LPTx connections, use the following syntax:
net use lpt<x> /delete

Persistence pays off
Another more permanent solution, also suggested by Durwin, requires establishing a persistent connection using Net.exe. To do so, use the following syntax at a command prompt:
net use lpt<x>: \\<printserver>\<sharename> /persistent:yes

Windows 2000 and Novell Client32
Although completely agreeing with Durwin’s suggestions, member Phil.hall cautions that the methods listed above still may not work due to the interaction of Windows 2000 and Novell’s Client32. “You may have to right-click on the ‘N’ icon in the system tray, select Novell Capture Printer Port, and fill in the blanks there as well, ” writes Phil.hall. “I know it is duplication, but sometimes [Client32] just doesn’t seem to ‘get it’ unless you do that.”

Using HP Jetdirect
Member Alon offers another solution if Evileyejoe’s printer is connected to a separate print server, such as an HP Jetdirect external or internal print server. Alon has a client who routinely prints from a DOS application. The client has assigned LPT2 as the name for the HP Jetdirect print server TCP/IP port name. “The DOS program uses LPT2, because it is the printer with no problems,” writes Alon. “This works great for him in Windows 95, 98, and Me. If you are using an HP Jetdirect print server, then that should work for 2000 as well.”

Alon recommends “adding a new port named LPT2 and mapping it to the networked printer using the UNC path” if that’s how Evileyejoe’s printer is set up.

Ask your TechRepublic peers for advice and assistance

If you have a question that you can’t find an answer to, post it in TechRepublic’s Technical Q&A section. Other TechRepublic members will try to answer your question in return for TechPoints.