Cara Menghapus Driver Printer Windows Xp
I have a client (XP SP3) machine where newer drivers have been installed.
Unfortunately while these (audio) drivers fixed mic boost, they have introduced problems such as no input working and random unnamed devices in applications that select the audio device. I need to revert the drivers.
However, rollback does not work (something about the drivers weren't backed up) and manually selecting the older driver is futile as XP just ignores it, stating, in its infinite wisdom, that the current driver is better and so I'd have no reason to want to use the older driver.
I know on printer drivers I can just delete - is there an option for other drivers?
Btw. I have done some research and can't seem to find a definite answer so I think this will be of help to plenty of others as well.
6 Answers
Windows uses a number of factors to decide what is the 'best' driver, such as hardware ID matching (INFs that match more specific hardware IDs are 'better'), driver date, driver version, and whether the driver is signed. How Setup Selects Drivers has the details if you're interested.
As for how to remove the newer driver, if it has an installer listed in Add/Remove Programs, then by all means use that. If not, you should be able to manually choose the older driver by right-clicking on the device in Device Manager, selecting 'Update Driver...', 'Install from a list or specific location', 'Don't search. I will choose the driver to install', etc. Or did you already try that? (As well as selecting 'Uninstall...'?)
If all else fails, you might have some success using the devcon
command that ships with the Windows Driver Kit. You can remove a driver package using devcon dp_delete
, or force Windows to choose a different driver using devcon update
. There's also an older version of devcon available for direct download (the WDK is pretty large).
If you resort to manually deleting the driver's .inf
file from %SystemRoot%inf
, be sure to delete the corresponding .pnf
file as well, because Windows uses that to cache some/all of the .inf
information.
Here are some good pointers for uninstalling pesky .inf files (Microsoft link): http://support.microsoft.com/kb/813449
Something to try if your driver uses a .dll would be to unregister the driver's dll: http://www.xp-vista.com/other/how-to-unregister-dll-files
It's worth a try, just make sure you 'cd' to the directory containing the dll.
Another useful tool for these kinds of problems is the Change Analysis Diagnostic tool: http://support.microsoft.com/kb/924732
Have tried devcon, but it says that there is no dp_delete command, and when investigating things I found a easier way.
As some people say, you can delete .inf and pnf. What they don't tell is how to locate those.
First, open device manager as administrator, right click on device and choose properties, on driver tab, click on details, and you would get the .sys filename of the driver.
Then you must locate the correct .inf and pnf to delete, they are not the same name as the .sys.
Follow instructions from http://winhlp.com/node/199 , which in brief are:
- cmd as admin, cd to inf folder: cd %windir%inf
- Using the name of the .sys file (without the extension) instead of 'WG311T', look for the inf file with:
- for %a in (oem*.inf) do find /i 'WG311T' %a >>out.txt
- Open out.txt with notepad, and look which oem*.inf file is your driver.
- Delete .inf and .pnf oem file with (substitude 'oemXX' for the name of oem file where your driver was found):
- attrib -h -r -s oemXX.*
- del oem12.* Reboot
Follow original link http://winhlp.com/node/199 for detailed instructions.
How to know the name of the driver to look for isn't explained there, remember that it's the same as the .sys file (without the extension).
Tested removing bcmwl6.sys driver from Broadcom wifi succesfully.
You should find corresponding .inf file and delete it from windowsinf directory
The KB article that l0c0b0x mentioned includes a link to an API call that can be used on Windows XP and later (on Windows 2000 you delete .pnf and .inf files manually).
The SetupUninstallOEMInf function uninstalls a specified .inf file and any associated .pnf file. If the .inf file was installed with a catalog for signing drivers, the catalog is also removed. A caller of this function must have administrative privileges, otherwise the function fails.
Hmm, I booted into safe mode and managed to resolve this by making sure I uninstalled the device and interrupted XP before it tried automatically reinstalling it when I scanned for hardware changes. Still interested in how to remove a driver from being detected in automatic driver install though.
Not the answer you're looking for? Browse other questions tagged windows-xpdrivers or ask your own question.
Modern printers reduce business printing costs with remarkable flexibility and quality output. The downside of improved printer quality and flexibility is the increased complexity of the software responsible for formatting the output. Once installed, the software drivers that communicate with the operating system and individual programs on the computer are referenced in the registry. Not all print drivers behave as they should during the uninstall process, leaving behind registry references that may interfere with other printing procedures. When this happens, knowing where to find the orphaned entries is the first step toward cleaning them out.
Step 1
Click the “Start” button.
Step 2
Type “regedit” in the “Search” dialog box and press the “Enter” key.
Step 3
Click the “Continue” button when the User Account Control pop-up window appears.
Step 4
Navigate to the registry key containing your printer control set by clicking the following entries in the registry editor’s left-hand panel in this order: 'HKEY_LOCAL_MACHINE, SYSTEM CurrentControlSetControlPrintEnvironments Windows NT x86 Drivers Version-3.'
Step 5
Click the folder with the label corresponding to the printer you want to remove to highlight it.
Step 7
Click the “Yes” button when you are prompted to confirm deletion of the key.
Step 8
Close the registry editor and reboot the computer to complete the removal process.
Tip
- When deleting a shared or networked printer, delete the printer’s registry entries under “HKEY_CURRENT_USERPrintersConnections” and “HKEY_LOCAL_MACHINESYSTEMCurrentControlSetControlPrintProvidersLanMan Print ServicesServersPrinters” as well.
References
About the Author
Finn McCuhil is a freelance writer based in Northern Michigan. He worked as a reporter and columnist in South Florida before becoming fascinated with computers. After studying programming at University of South Florida, he spent more than 20 years heading up IT departments at three tier-one automotive suppliers. He now builds wooden boats in the north woods.
Photo Credits
- Thomas Northcut/Photodisc/Getty Images