Roadmap for Device and Driver Installation
To install a device and driver in Windows Vista and later versions of Windows, follow these steps:
Step 1: Learn the fundamentals of device and driver installation in Windows.
You must understand the fundamentals of device and driver installation in the Windows family of operating systems. This will help you to make appropriate design decisions and will allow you to streamline your development process. For more information, see Overview of Device and Driver Installations.
Step 2: Learn about driver packages and their components.
A driver package consists of all the components that you must supply to install your device and support it under Windows.
To install a device or a driver, you must have system-supplied and vendor-supplied components. The system provides generic installation software for all device classes. Vendors must supply one or more device-specific components within the driver package.
For more information, see Driver Packages.
Step 3: Learn about information (INF) files.
An INF file contains the information and device settings which the system-provided device installation components use to install your driver package, such as the driver for the device and any device-specific applications.
For more information, see INF Files.
Step 4: Learn about additional software installation components.
Your driver package can include various software components, such as a co-installer or class installer, that can enhance and extend device and driver installations. For example, a co-installer can do the following:
- Perform additional device installation tasks that the INF file cannot handle. For example, a co-installer could write additional device-specific information to the registry.
- Provide finish-install Wizard pages to display additional wizard pages to the user after your device is installed.
- Provide finish-install action to start an installation program that can only run in an interactive user context.
For more information, see Device and Driver Installation Software.
Step 5: Create a driver package for your device and drivers.
Your driver package must provide an INF file, the device's driver files, as well as optionally provide additional software components. You may refer to the sample Toaster driver package to determine which components are needed for your driver package.
For more information about the components of a driver package, see Creating a Driver Package.
For more information about driver packages, see the Toaster Sample.
Step 6: Test-sign your driver package during development and testing.
Test-signing refers to using a test certificate to sign a prerelease version of a driver package for use on test computers. In particular, this allows developers to sign driver packages by using self-signed certificates, such as those the MakeCert tool generates. This capability allows developers to install and test driver packages in Windows with driver signature verification enabled.
For more information, see Signing Drivers during Development and Test.
Step 7: Release-sign your driver package for distribution.
After you have tested and verified your driver package, you should release-sign the driver package. Release-signing identifies the publisher of a driver package. While this step is optional, driver packages should be release-signed for the following reasons:
- Ensure the authenticity, integrity, and reliability of driver packages. Windows uses digital signatures to verify the identity of the publisher and to verify that the driver has not been altered since it was published.
- Provide the best user experience by facilitating automatic driver installation.
- Run kernel-mode drivers on 64-bit versions of Windows Vista and later versions of Windows.
- Playback certain types of next-generation premium content.
Driver packages are release-signed through either:
- A WHQL Release Signature obtained through the Hardware Certification Kit (HCK).
- A release signature created through a Software Publisher Certificate (SPC).
For more information, see Signing Drivers for Public Release.
Step 8: Distribute your driver package.
The final step is to distribute the driver package. If your driver package meets the quality standards that are defined in the HCK, you can distribute it through Microsoft Windows Update program. For more information, see Distributing a Driver Package.
These are the basic steps. Additional steps might be necessary based on the installation needs of your individual device and driver.