So what about the driver store?

I was asked this recently and I thought it was an interesting question:

I know I cant delete things out of the component store, but what about the driver store?  Can I remove files from there without hurting anything?

The answer to this is: YES.

The driver store is a serviceable entity.  Drivers that Microsoft authors, like NTFS.SYS for example, obviously live here and are updated.  Does that mean that you need to keep every version of NTFS, or your old Nvidia or ATI drivers for that matter?  Of course not.  And for systems that are space sensitive, this would be one place to potentially see some impact on the bottom line when it comes to disk usage, especially if the machine were an upgrade or was in service for a while.  So, how do you get rid of the old drivers?  Personally, I always use pnputil.exe, it’s inbox and is fairly easy to use.  Here’s an example:

First, I would list out all of the drivers that are OEM.  The reason being that this has the highest likelihood of producing duplicates over time as the drivers are updated.  Here’s an example of my machine:

pnpuitl -e

Microsoft PnP Utility

Published name : oem0.inf
Driver package provider : Microsoft
Class : Printers
Driver date and version : 06/21/2006 6.1.7600.16385
Signer name : Microsoft Windows

Published name : oem1.inf
Driver package provider : NVIDIA
Class : Display adapters
Driver date and version : 06/09/2010 8.17.12.5849
Signer name : Microsoft Windows Hardware Compatibility Publisher

From here, you can remove any oem.inf’s you find that might be extra, my machine is pretty clean, as you can see from the example, but if I had updated my Nvidia driver several times, I might have 3-4 of those sitting around.  Once I have identified the driver I want to get rid of (let’s say the printer driver I have installed), I use the following command:

pnputil –d oem0.inf

It will remove the INF and the associated driver package in the store from the machine.

For more on command syntax and usage, see the MSDN page here: http://msdn.microsoft.com/en-us/library/ff550423(v=VS.85).aspx

Hope that helps,

--Joseph