Windows Vista driver management

In the Microsoft Deployment Toolkit (Lite Touch and Zero Touch for SMS 2003), as well as in ConfigMgr 2007, drivers are added just-in-time to a Windows Vista image as it is being deployed (after it is placed on the disk, but before it boots for the first time).  This is done using the PKGMGR.EXE utility or the underlying APIs to add new drivers into the Windows Vista driver store, a special directory structure (located in C:\WINDOWS\system32\DriverStore) that Windows Vista uses to hold both in-box drivers and “trusted” third-party drivers.

It’s worth noting that after MDT injects the drivers into the driver store, it no longer needs the local copies in C:\Drivers; they will be cleaned up later in the process.

It’s also possible to add drivers later, after Windows Vista is up and running (online), using PNPUTIL.EXE, a new utility for interacting with the driver store.  (Want to get really fancy?  You can even self-sign unsigned drivers.  See for the details.)

Let’s say you just want to see what additional drivers have been added to the driver store.  That’s pretty easy to do using PNPUTIL.EXE.  Just issue this command:


This will show a brief listing of all third-party drivers present in the driver store.  You can also delete third-party drivers (one at a time) using PNPUTIL.EXE -d, add drivers into the driver store with PNPUTIL.EXE -a, etc. 

There are some other driver management improvements in Windows Vista worth mentioning:

  • Windows Vista will recursively look through specified directory structures (e.g. those specified via OEMPnpDriversPath or the DevicePath registry setting), so it’s no longer necessary to list each subdirectory containing drivers like you needed to do in Windows XP.

  • Windows Vista allows the specification of network UNC paths to locations containing drivers.  A few comments about that:

    • Assuming the machine is domain joined, Windows Vista will use the computer account to access that share, so make sure security is set appropriately.

    • Obviously this doesn’t work for all types of drivers, e.g. network drivers needed to get to the UNC share.

    • Don’t point to huge directory structures as device installation can then take a very long time as it searches through the entire directory structure (generating lots of network traffic as it processes each INF file it finds) looking for a matching driver.

    • Don’t assume laptops will be on the corporate network – they may need the drivers when roaming, so plan accordingly (i.e. consider adding them to the driver store).

    • This is probably most useful for common peripheral drivers – devices that are not present when the OS is installed but could be inserted at any point in the future.

  • Windows Vista can automatically download drivers from the Windows Update website (at least once you have a network driver loaded).  This works well for many devices, as there are thousands of drivers available via this method.  (Want to search through them yourself?  Be sure to check out the website.)

Comments (6)
  1. No, this is actually possible for drivers delivered as an INF + files.  PKGMGR knows specifically how to deal with drivers.

    No one (outsie of Microsoft service packs at least) ships drivers as MSU files, and only Microsoft can create these.  (They need to be signed by the Microsoft build labs.)

  2. Anonymous says:

    Hi Michael,

    You talk about adding drivers when the OS is deployed (online) via PKGMGR. I assume this is only possible for drivers delivered as .msu?

  3. Anonymous says:

    So I am REALLY foggy on this…

    Basically, this is the first reference I have found that mentions

    "drivers are added just-in-time to a Windows Vista image as it is being deployed (after it is placed on the disk, but before it boots for the first time"

    This is exactly what I want to do, but all references I find to PkgMgr.exe keep talking about injecting drivers INTO the WIM file.   Is there clear cut steps on how to use pkgmgr to drop a specific set of drivers onto a host machine after I lay the image down to C: with ImageX, but prior to the first boot?

  4. showbox says:

    Thanks for the great info. I really loved this. I would like to apprentice at the same time as you amend your web site, how could i subscribe for a blog site?
    For more info on showbox please refer below sites:
    Latest version of Showbox App download for all android smart phones and tablets. – It’s just 2 MB file you can easily get it on your android device without much trouble. Showbox app was well designed application for android to watch movies and TV shows, Cartoons and many more such things on your smartphone.
    For showbox on iOS (iPhone/iPad), please read below articles:
    Showbox for PC articles:
    There are countless for PC clients as it is essentially easy to understand, simple to introduce, gives continuous administration, effectively reasonable. it is accessible at completely free of expense i.e., there will be no establishment charges and after establishment
    it doesn’t charge cash for watching films and recordings. Not simply watching, it likewise offers alternative to download recordings and motion pictures. The accompanying are the strides that are to be taken after to introduce Showbox application on Android.
    The above all else thing to be done is, go to the Security Settings on your Android telephone, Scroll down and tap on ‘Obscure sources’.

  5. aw says:

    hai, I just want to tell you that I am just very new to blogs and seriously loved this website. More than likely I’m planning to bookmark your blog post .
    You amazingly come with really good posts. Thanks a lot for sharing your blog Microsoft.

Comments are closed.

Skip to main content