Manage Device Drivers for Windows
Digitally signed device drivers can be added to an offline Windows image before Windows Setup or during Windows Setup. In addition, during your testing, you can add test certifications for unsigned drivers.
Driver deployment methods include:
- Using Package Manager to add drivers to an offline image.
- Using an answer file to add drivers during the offline phase of Setup.
- Using an answer file to add drivers during the AuditSystem online phase of Setup.
- Using answer files and the DPInst.exe tool to add drivers online during the AuditUser phase of Setup.
- For Windows Server® 2008, placing drivers in the $WinPEDrivers$ directory to be picked up automatically during operating system setup.
- Using the PostReflect.exe command-line tool to add Windows Vista Service Pack 1 (SP1) boot-critical drivers to an offline Windows image.
When you specify a device driver path in an answer file, all .inf drivers in the specified directory and subdirectories are added to the driver store of the Windows image. For example, if you want to have all of the drivers in the C:\MyDrivers\Networking, C:\MyDrivers\Video, and C:\MyDrivers\Audio directories available in your Windows image, you can specify the device driver path C:\MyDrivers. All drivers in each of the subdirectories will be added to the driver store for that Windows image. If you have multiple drivers to add to this directory, it is recommended that you create subdirectories for each driver or driver category. This ensures that there are no conflicts for drivers with the same file name.
Any out-of-box drivers that are added are renamed to Oem*.inf. This is to ensure unique file names for new drivers added to the Windows image. For example, the files MyDriver1.inf and MyDriver2.inf are renamed Oem0.inf and Oem1.inf.
Because all drivers in the directory and subdirectories that are referenced in the answer file are added to the image, you should manage the answer file and these directories carefully to address concerns about increasing the size of the image with unnecessary driver packages.
To run an .exe or .msi driver package, you must add a custom command to install the driver package. For more information, see Add a Custom Command to an Answer File.
PostReflect.exe must be run offline on Windows images that have been updated with Windows Vista SP1. Windows Vista SP1 must be applied to an online Windows image. However, if you capture the updated image for deployment, you must run PostReflect.exe on the offline image to add all kernel mode and boot-critical drivers to the image so that it can be deployed to various hardware configurations. For more information, see PostReflect Command-Line Options.
64-bit editions of Windows Vista and Windows Server 2008 will load a kernel-mode driver only if the kernel can verify the driver signature. If you are performing an upgrade, unsigned drivers and their associated application, service, or device must be removed or updated with a signed driver.
One of the most common issues in deploying drivers occurs when a driver is successfully imported into the driver store but, after the system is online, Plug and Play finds a higher-ranking driver and installs that driver instead.
The Windows PnP manager ranks the following driver package properties in order of importance:
- Plug and Play ID match
- Driver date
- Driver version
For example, if a device has a better Plug and Play ID match but is unsigned, a signed driver with a compatible ID match takes precedence. In addition, a newer driver can be outranked by an older driver if the older driver has a better Plug and Play ID match or signature.
For detailed documentation, see How Setup Ranks Drivers in the Windows Driver Kit (WDK).
The following Web sites provide more information about device driver requirements:
- For information about DPInst.exe and other tools available in the Windows Driver Kit (WDK), see How to Get the Windows Driver Kit (WDK and the Windows Logo Kit (WLK).
- For more information about Plug and Play driver deployment, see Plug and Play Device Driver Deployment in Windows Vista and Windows Server 2008.
- For information about digital signatures for kernel modules on x64-based systems running Windows Vista, see the relevant page on the Windows Hardware Developer Central Web site.
- For information about driver installation for 32-bit and 64-bit platforms, see the relevant page on the Windows Hardware Developer Central Web site.
- For information about driver signing requirements for Windows, see the relevant page on the Windows Hardware Developer Central Web site.
- For more information about adding device driver support to Windows, see "The Windows Vista Step-by-Step Guides for IT Professionals" on the Microsoft Download Center Web site and the Hardware page on the Microsoft Windows Server TechCenter Web site.