Advanced troubleshooting for network printing problems in Windows XP
27.12.2007
Introduction
This article describes how to troubleshoot
difficulties that may occur when you try to
print to a network printer in Windows XP.
This article is intended for advanced
computer users. If you are not comfortable
with advanced troubleshooting, you might
want to ask someone for help or contact
support.
General troubleshooting steps
1. Verify that basic network connectivity is
working.
Check user rights, protocols, share names,
and so on to make sure that you can connect
to the server. Copy files to a share on the
print server by using Windows Explorer. If
you cannot gain access to the server, you
may be unable to gain access to the printer.
2. Create a local printer, and then redirect
the port to the network server. Follow these
steps:
a. Create a local printer and, under Ports,
add a new port.
b. Click Local Port, click New Port, and
then type the server and printer name for
the printer in \\ServerName\PrinterName
syntax.
c. Use the new port for the local printer.
If you are prompted for a password, there
may not be a field in Windows XP in which to
enter a password. Reset the password on the
destination computer to be blank. Example:
On a Windows 98 computer that is hosting a
Xerox printer, clear the password; set it to
be blank. (Not the actual word "blank")
This test shows whether there is a problem
with copying files from the server to your
computer. This copying occurs if you use
Connect To Setup or if you click Network
Printer in the Add Printer Wizard.
3. If the printer is not a PostScript
printer, see whether you can print from an
MS-DOS-based program. (Printing from an
MS-DOS-based program does not work on a
PostScript printer unless a PostScript
driver is selected in the program.)
Check whether the net use command has been
run to map the LPT port to the network share.
If it has, delete the mapping, and then map
the port again. Try again to print.
If printing works, there may be an issue
with ghosted connections. You might have to
run a logon script command to remap the port
every time that you log on.
If printing does not work, type dir > lptx
at a command prompt, where x is the number
of the port that is being mapped, and then
press ENTER.
If printing still does not work,
double-check the networking connections.
For additional information, click the
following article number to view the article
in the Microsoft Knowledge Base:
314067
(http://support.microsoft.com/kb/314067/)
How to troubleshoot TCP/IP connectivity with
Windows XP
Back to the top
Troubleshooting specific issues
You cannot print to a network printer after
you add Internet Connection Sharing
After you add Internet Connection Sharing to
the network, you may be unable to print.
This issue occurs because Internet
Connection Sharing uses a Class C subnet
that has an address range of 198.168.0.x. To
resolve this issue, reset the IP address of
the printer to match the subnet of the
computers that are using Internet Connection
Sharing.
You cannot send a print job to a Windows 98-based
client
You may be unable to send a print job from
Windows XP to a Microsoft Windows 98-based
client that is using a password for the
printer share. To resolve this issue, run
the following command:
net use lpt1 \\computer\printer password /persistent:yes
Replace computer with the computer name of
the Windows 98-based computer that is
sharing the printer, replace printer with
the name of the printer share, and replace
password with the password for the printer
share.
Error messages that are caused by local port
monitor issues
When you restart the computer or restart the
Print Spooler service, you may receive the
following error message:
Spoolsv.exe failed to start
When you open the printer's properties, you
may receive the following error message:
Out of Resources Error
When you try to print a document, you may
receive an "Access violation" (Dr. Watson)
error message. The Dr. Watson log points to
Spoolsv.exe with error code C0000005.
You may receive the following error message,
and the print spooler stops:
The instruction at 'address' referenced
memory at 'address'. The memory could not be
read.
An attempt to restart the Print Spooler
service or to open the Printers folder may
cause the same message.
These issues can occur if a third-party
program changes the default local port
monitor. To resolve these issues, correct
the Local Port value in the registry. Follow
these steps: Warning Serious problems might
occur if you modify the registry incorrectly
by using Registry Editor or by using another
method. These problems might require that
you reinstall the operating system.
Microsoft cannot guarantee that these
problems can be solved. Modify the registry
at your own risk.
1. Start Registry Editor.
2. Locate the Local Port value under the
following key in the registry:
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Print\Monitors\Local
Port
3. Double-click the Driver key, and then
edit the value. Change the string value to
Localspl.dll, and then click OK.
4. Check the following registry key for
third-party port monitors, and then remove
any port monitors other than default port
monitors:
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Print\Monitors
The default port monitors are:
AppleTalk Printing Devices (if Services for
Macintosh is installed)
BJ Language Monitor
Local Port
PJL Language Monitor
Standard TCP/IP Port
USB Monitor
Windows NT Fax Monitor
5. Check the following registry key for
third-party print providers, and then remove
any print providers other than default print
providers:
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Print\Providers
The default print providers are:
Internet Print Provider
LanMan Print Provider
6. Quit Registry Editor.
After you edit the registry, restart the
print spooler:
1. Click Start, click Run, type mmc, and
then click OK.
2. On the File menu, click Add/Remove Snap-in.
3. Click Add, click Computer Management,
click Add, and then click Finish.
4. Click Close, and then click OK.
5. Expand Computer Management, expand
Services and Applications, and then click
Services.
6. Right-click Print Spooler, and then click
Start.
Back to the top
You cannot add Windows XP printer drivers to
Windows NT 4.0
To add a network printer that is managed by
a Windows NT 4.0-based computer to a Windows
XP-based computer, install the printer
locally on LPT1 on the Windows XP-based
computer. Follow these steps:
1. Click Start, click Run, type control.exe
in the Open box, and then click Printers and
Faxes.
2. Right-click the printer, and then click
Properties.
3. On the Ports tab, click LPT1.
4. Click Add Port.
5. Double-click Local Port.
6. Type \\ServerName\PrinterShare, where
ServerName is the name of the server and
PrinterShare is the name of the printer
share.
7. Click OK.
You receive a "The device is not ready"
error message
When you print a document, you may receive
the following error message:
There was an error found when printing the
document "Name of document" to LPT1:. The
device is not ready.
If the printer is a network printer, try
opening an interprocess communication (IPC)
connection by using \\ServerName, to make
sure that there is network connectivity and
that the server can respond to share
requests.
For a local printer, check the cables and
the power to the locally attached printer.
If these methods work, you may need to
reinstall the printer drivers. To completely
remove the printers, edit the registry:
1. Click Start, click Run, and then type
regedit in the Open box.
2. Locate the Printers value under the
following key in the registry:
KEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Print\Printers
3. Remove the printers that are installed
under this key. For example, remove the
following key for a Generic Text/Only
printer:
KEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Print\Printers\Generic/Text
Only
4. Follow the instructions in the "Error
Messages Typically Due to Local Port Monitor
Issues" section of this article.
5. Quit Registry Editor.
After you do this, reinstall the drivers for
your printer.
You cannot print from a 16-bit MS-DOS-based
program
In this situation, type the following line
at a command prompt, and then press ENTER:
net use lpt1: \\servername\printershare /persistent:yes
In the 16-bit program, print to LPT1. You
can assign other LPT ports to MS-DOS-based
16-bit programs if the program needs to use
other ports.
For additional information, click the
following article number to view the article
in the Microsoft Knowledge Base:
257859
(http://support.microsoft.com/kb/257859/)
BitWare causes Spoolsv.exe program error in
Windows 2000
Error messages that are caused by
incorrectly configured or incompatible point
and print situations
Point and Print reduces administrative
overhead and simplifies and automates
printing. Point and Print functionality was
introduced in Microsoft Windows 95, Windows
98, and Windows 98 Second Edition (as a
client), and in Windows NT 3.5 and later.
When you connect to a printer on a print
server, the connecting client looks for the
appropriate drivers on the print server. If
the drivers are installed on the server, the
drivers are automatically downloaded and
configured for the client. However, if the
drivers are not present, you are prompted to
select and install the drivers.
When you attempt to connect a Windows-based
network client to a print server, you may
receive the following error message:
The server on which the device name printer
resides does not have the correct printer
driver installed. If you want to install the
driver on your local computer, click OK.
You may receive this error message in the
following situations:
• Server message block (SMB) is connected to
the print server.
• You connect to a printer by using the new
Internet Printing Protocol (IPP) and the
Internet print server does not have a
suitable driver installed.
• The computer has a third-party driver that
is incompatible with Windows XP.
If you receive the error message in one of
these situations, use the appropriate
workaround.
Back to the top
Workarounds
SMB-connected print server
SMB print servers allow workstations on the
network to send print jobs directly to a
print server without going through an
intermediate computer or print server. This
type of configuration does not support Point
and Print.
To work around this issue, follow these
steps to install the print driver locally
and create a connection to the SMB print
share:
1. Click Start, click Run, type control.exe
in the Open box, and then click Printers and
Faxes.
2. Double-click Add a printer, and then
click Next.
3. Click Local printer attached to this
computer, and then click Next.
4. Click Create a new port.
5. In the Type box, click Local Port, and
then click Next.
6. Type the SMB share name. For example:
\\PrintServer\ShareName
7. Continue the wizard and install the
appropriate driver for the device.
Internet printing protocol
You can use IPP to print directly to a
Uniform Resource Locator (URL) over an
intranet or the Internet. In addition, you
can install a printer from the Internet or
intranet by using Microsoft Internet
Explorer. The error message can occur if the
IPP print server does not have a suitable
driver installed.
To work around this issue, follow the steps
for the appropriate method:
Method 1 (administrators only)
Install a compatible driver on the server.
1. Click Start, click Run, type control.exe
in the Open box, and then click Printers and
Faxes.
2. Double-click Add a printer, and then
click Next.
3. Click Local printer attached to this
computer, and then click Next.
4. Click Create a new port.
5. In the Type box, click Local Port, and
then click Next.
6. Type the share name. For example:
\\PrintServer\ShareName
7. Continue the wizard and install the
appropriate driver for the device.
Method 2
Install a suitable driver on the client
computer, and then redirect the printer to
the appropriate IPP URL.
1. Click Start, click Run, type control.exe
in the Open box, and then click Printers and
Faxes.
2. Double-click Add a printer, and then
click Next.
3. Click Local printer attached to this
computer, and then click Next.
4. Click Create a new port.
5. In the Type box, click Standard Port
Monitor, and then click Next.
6. Type the Internet Protocol (IP) address
of the IPP print server.
7. Continue the Add Printer Wizard and
install the appropriate driver.
Incompatible print driver
Some third-party drivers that are written
for Windows NT 4.0 do not work properly in
Windows XP. If you attempt to install an
incompatible driver, the error message is
displayed during Point and Print.
To work around this issue, follow the steps
for the appropriate method:
Method 1 (administrators only)
Use an updated driver from the
manufacturer's Web site:
1. Download and install the updated driver.
2. If the driver has an uninstall tool, run
the tool before you continue these steps.
3. Click Start, click Run, type control.exe
in the Open box, and then click Printers and
Faxes.
4. Double-click Add a printer, and then
click Next.
5. Click Local printer attached to this
computer, and then click Next.
6. Click the same port that you used for the
previous driver.
7. Click Have Disk, and then type the name
of the installation folder for your updated
driver.
8. Continue with Setup, and share the driver
for down-level clients.
Method 2 (administrators only)
Install a Windows XP driver on the print
server:
1. If the original driver has an uninstall
tool, run the tool before you continue these
steps.
2. Click Start, click Run, type control.exe
in the Open box, and then click Printers and
Faxes.
3. Double-click Add a printer, and then
click Next.
4. Click Local printer attached to this
computer, and then click Next.
5. Click the same port that you used for the
previous Original Equipment Manufacturer
(OEM) driver.
6. Click the appropriate model in the
Model/Manufacturer list.
7. Finish Setup, and share the printer for
network use.
Method 3
Install a compatible driver on the client,
and then redirect the output to the server:
1. Click Start, click Run, type control.exe
in the Open box, and then click Printers and
Faxes.
2. Double-click Add a printer, and then
click Next.
3. Click Local printer attached to this
computer, and then click Next.
4. Click Create a new port.
5. In the Type box, click Local Port, and
then click Next.
6. Type the share name. For example:
\\PrintServer\ShareName
7. Continue the wizard and install the
appropriate driver for the device.
REFERENCES
If you are still experiencing problems that
are similar to the one that this article
describes, it may be a different problem
than the one that this article describes.
This is a list of articles that discuss
similar problems that you can review to try
to address the problem:
314085
(http://support.microsoft.com/kb/314085/)
Advanced troubleshooting for when you cannot
print in Windows XP
315325
(http://support.microsoft.com/kb/315325/)
You cannot print documents after upgrade to
Windows XP
870622
(http://support.microsoft.com/kb/870622/)
How to troubleshoot problems that you may
experience when you try to print to a local
printer by using Office programs in Windows
XP
873396
(http://support.microsoft.com/kb/873396/)
You receive an error message if you try to
print a document on Windows 2000-based and
Windows XP-based computers
Related information