Google
 
Web tech-mania.blogspot.com

Monday, October 09, 2006

 

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.
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.
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.

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:
1 Open the Printers (Printers and Faxes on Windows XP) folder
2 Delete all of the printers
3 Click File, Server Properties
4 Select the Drivers tab
5 For each entry:
a. Select the entry
b. Click Remove

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

Some information about cleanspl.exe:
cleanspl.exe does a very thorough job of cleaning up the print spooler stuff, but it does not remove the spooler service dependency on the printer service
You can use it to clean up the spooler stuff on another computer (i.e. remotely).
When you run it, it asks you if you want to remove some things that are actually delivered (and installed by default) with Windows. In most cases, you should answer No to the corresponding prompts (you don't want to remove the Standard TCP/IP Port or the BJ Language Monitor).
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!

open regedit (e.g. click Start, key regedit and press Enter)
navigate to HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Print\Environments\Windows NT x86\Drivers
under this key, there will be the keys Version-2 and Version-3 (one or the other of these may be absent - not a problem)
the sub-keys under these contain the printer driver configuration information
delete all the sub-keys inside Version-2 and Version-3, but not these keys themselves
open a Command Prompt window
9 key the commands
net stop spooler
net start spooler
10 Open Windows Explorer
11 Navigate to %systemroot%\system32\spool\printers\ and delete any files there. By default, this is where the print spooler stores print files.
12 Navigate to %systemroot%\system32\spool\drivers\w32x86 (%systemroot% is usually Windows, but it might be winnt or something else; this is set when the OS is installed).
13 Inside w32x86, there will be folders with the names 2 and 3 (one or more of these may be absent - not a problem)
delete all of the files and sub-folders in each of the 2 and 3 folders, but not the folders themselves
inside w32x86, there may be other folders with names starting with "hewlett_packard", "hphp" or something else; delete these folders also
14 Restart the print spooler (see steps 8 and 9 above)

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.

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
HKEY_LOCAL_MACINE\SYSTEM\CurrentControlSet\Services\Spooler\DependOnService
The sc config command at step 16 resets the value of that entry.
15 Open a Command Prompt window
16 key the command
sc config spooler depend= RPCSS
(note the space after the = but not before)
17 Restart the print spooler (see steps 8 and 9 above)

Comments: Post a Comment



<< Home

This page is powered by Blogger. Isn't yours?