Frequently Asked Questions
How to clean up printer drivers
If the Print Spooler service fails when printing, when Windows starts or it can not be restarted, the usual reason is that one or more printer drivers is defective. If the Print Spooler service is not running, the Printers and Faxes folder will be empty and you can not use it to remove (or add) printers or printer drivers. If you have a Lexmark printer, see special information about Lexmark printer drivers.
It's important to only install printer drivers that are designed and built specifically for the Windows version you have. This is particularly important for Windows XP; many of the CDs and floppy disks distributed with printers (particularly older models) do not have Windows XP drivers - check the printer manufacturer's web site for printer drivers for the version of Windows you have (see Links).
A common cause of printer driver problems is to upgrade to Windows XP from Windows 95, 98 or ME without first removing the printer and the printer drivers.
The steps on this page will remove all printers and printer drivers from the computer. The printing subsystem is then "clean" and ready for printers to be added using printer drivers specifically for the Windows version you have.
If you have drivers for several printer models installed (e.g. on a Print Server computer) it may only be necessary to remove the defective printer drivers. At steps 2, and 7, just delete the entries for the printers or printer drivers you suspect are defective. Unfortunately, the files that comprise the drivers are all in the same folder. Also, the same files may be used by the drivers for several printer models. So, selectively deleting the driver files at step 12 may be difficult or impossible. With Windows 2000 and XP, in most cases, deleting the registry entries for the drivers (step 7) will be sufficient, so you may want to skip steps 10 through 12 if you have multiple printer models and don't want to re-install all of them.
Check in Control Panel, Add/Remove Programs; if there is an entry relating to one of the printers, select it, then click Change/Remove. Follow the dialog and "uninstall all" or "remove all" as appropriate. Some "printer software" have programs that show up here and it will be a good idea to remove those before going any further.
If the Print Spooler service is operational:
Usually, this will do a pretty good job of cleaning out drivers with Windows 2000 and later (not so with Windows NT 4).
If the Print Spooler service is not operational, or you want to make certain there are no printer driver remnants, either follow the instructions below or use cleanspl.exe from the Windows 2000, XP or 2003 Resource Kit (http://www.microsoft.com/downloads/details.aspx?FamilyID=9d467a69-57ff-4ae7-96ee-b18c4790cffd&DisplayLang=en). cleanspl.exe from the Windows 2003 Resource Kit tools will work on Windows XP.
Some information about cleanspl.exe:
Here's how to clean up the print spooler stuff if cleanspl.exe is not available or you prefer to do things manually.
Warning! be very careful using regedit - if you delete the wrong things, you may render your computer inoperative!
At this point, the system should be pretty well back to the way it was before any printers were installed.
Some would suggest restarting Windows at this point, but with Windows 2000 and later, this does not seem to be required.
If you have a Lexmark printer, these additional steps may be necessary (thanks to Robert Orleth [MSFT] for providing this information). The Lexmark printer installation process sometimes installs a service that makes the print spooler service dependent on itself. If there is a problem with Lexmark service or a Lexmark printer driver (or you removed it using the steps above), the print spooler service may not start (see also http://support.microsoft.com/default.aspx?scid=kb;en-us;324757). The steps below make the print spooler service only dependent on the Remote Procedure Call (RPC) service (RPCSS), which is normal. The print spooler service dependencies are stored in the registry at
The sc config command at step 16 resets the value of that entry.
Last Updated 30 Dec 2004