Customers ask from time to time how they can pull down driver files that they see on the Windows Update site individually without the need to use the Windows Update Agent internally within Windows. This can be done using the Windows Update Catalog site located here: http://catalog.update.microsoft.com/v7/site/Home.aspx
You can use the site to pull down not only driver files on Windows Update but individual hotfixes as well. For drivers, I have found that there are two methods that are effective. The first is to try to use the manufacturer and model name of the device that you’re looking for. This works a good amount of the time but it will depend on how the driver is actually listed on the Windows Update Catalog as to whether or not you would get a good result. For example, a co-worker of mine was looking for a driver recently for his Belkin wireless NIC. Unfortunately, they didn’t have the device name so searching for this by manufacturer yields the following result:
As you can see from the screencap (hopefully), there are hundreds of drivers listed for Belkin wireless devices. So, what’s a better way to narrow this down? Use the PNP ID for the device. You can find this in the \Windows\INF\setupapi.dev.log on Windows Vista and Windows 7 based installations. In this case, the PNP ID was prefixed with USB\VID_050D&PID_945A. So, searching for this, we get the following:
So, this narrows the results from hundreds to tens, and we can further eliminate devices based on the OS we’re looking to find information about. Many people don’t even know about the Download Center, let alone that you can utilize the PNP IDs of devices to find the drivers for those devices.
Well now you know
I don't use drivers from Windows Update / Update Catalog. They are always very old and cause more issue compared to what they solve.
Always get the drivers from the vendor page (AMD, nVIDIA and so on)
And I think thats fine Andre. However, if you're looking to minimize image size for a deployment share, many OEM drivers have much larger packages (and thus footprints) than you would have with just the driver itself.
I never run the installers. I expand the drivers and install them with pnputil:
pnputil.exe -i -a <path to inf>
and remove the old driver with pnputil from the driver store.
The point is that the drivers you get on WU are extremely old. The latest driver for my HD 5770 is nearly 1 year old (Sep 2010)! And the 11.8 brings several performance improvements. Users who use device manager/WU to check for driver updates never get the improvements.
Another way to find the hardware Id, would be to use devcon.exe.
> devcon hwids =net usb\*
In that example, net is the device class, and usb\* filters on all devices enumerated as USB. Change the filter to pci\* for PCI devs, or just leave it out to get all net class devs. Other classes include 'display' for video cards and 'media' for sound cards (try 'devcon classes').
"I don't use drivers from Windows Update / Update Catalog. They are always very old and cause more issue compared to what they solve."
Andre, what issues have you experienced with WU/WC drivers, other than performance related?
Is it possible to prevent Windows Update from installing drivers, without disabling WU completely?
You can always set the policy for drivers to use a local source rather than Windows Update if thats the preference, this can be done via the following:
I had DPC issues and stability issues with drivers from Windows Update. Often the drivers also miss several features.
Joseph gave you the link to configure that drivers are not loaded from Windows Update.
The policy setting "Turn off Windows Update device driver searching" description states:
"This policy specifies whether Windows searches Windows Update for device drivers when no local drivers for a device are present."
Ok, but if drivers *are* present, they can/will be updated even if this setting is enabled. No?
Also in the description: "NOTE: This setting is replaced by "Specify Driver Source Search Order" in "Administrative Templates/System/Device Installation" on newer versions of Windows."
So if one has a video card and the very recent reference driver from AMD/Nvidia only has a two-part hardware Id match for it, it is possible that WU could replace the driver with something older, and possibly less functional, no matter what Group Policy settings are in place. Am i right? Is that a "good thing"?
Ok, i can answer my own question. Use the policy:
Computer Configuration\Administrative Templates\System\Device Installation\Device Installation Restrictions
Setting: Prevent installation of devices that match any of these device IDs
Checkbox: Also apply to matching devices that are already installed (On)
Alternatively, prevent updates for an entire class using "Prevent installation of devices using drivers that match these device setup classes" and enter one or more GUIDs -
No! Using either of those policies on Display class devices (video cards), removes the *existing* driver, and enables the Standard VGA driver. Not what i had in mind. :-)
About the best that can be done to avoid WU installing display drivers is to configure AU to only install important updates. I'm probably wrong about that too. :-(
You just gave me a great idea for a Powershell script. Loop through the devices on a new computer model and get the PnP IDs. Then connect to Update Catalog and download the drivers for the devices that match those PnP IDs. Will make building a new image in MDT so much easier.
Nice tip! Many times either I get no results or too many results on Windows Update Catalog.
Awesome post! I bet your co-worker was glad to be able to pull down the INF/CAT/SYS files from Windows Update that combined to just 722 KB instead of the 8.84 MB driver package from the vendor.
LOL, I think he might have been the "inspiration" for the article as a matter of fact Craig :)
Has anyone else had the following issue using Windows Update Catalog on Windows 7, or is it just me?
"To use this website, you browser must have the user data persistence setting enabled."
Even though said userdata persistence setting has been enabled since Day One.
This state of affairs has persisted through Windows 7 RTM to SP1; IE8 to IE9; etc.
I use a virtualized XP when I really need it, which is seldom.