Driver Store and Driver Packaging
Introduced in Windows Vista, the driver store is a central location where all driver files are stored before they are copied to their final destinations during device installation. The location of the driver store on a Windows Vista or later system is the following:
%SystemRoot%\System32\DriverStore
Driver files are stored in folders called driver packages, which are located within the FileRepository subfolder under the preceding path. For example, the driver package developed by Microsoft that contains core mouse support files is contained in the following folder:
%SystemRoot%\System32\DriverStore\FileRepository\msmouse.inf_3dfa3917
Within this folder are the driver (.sys) files, driver setup (.inf) files, Precompiled INF (.pnf) files, and an Extensible Markup Language (XML) manifest (.man) file that contains the manifest of all the files within the driver package. Together, all these files add up to the driver package, which contains all the files needed to install the device. To protect these driver files, the NTFS File System (NTFS) permissions on the driver store and all its subfolders and files is Full Control for the LocalSystem account and Read and Execute for the Everyone built-in identity.
This central store and driver package architecture is different from Windows XP, where driver source files needed for installing devices are typically found in several locations, including the following:
- %SystemRoot%\Driver Cache\I386\Drivers.cab
- %SystemRoot%\Driver Cache\I386\Service_pack.cab (for example, Sp2.cab)
- .inf files under %Windir%\Inf
- .sys files under %SystemRoot%\System32\Drivers
- Support dynamic-link libraries (DLLs) under %SystemRoot%\System32
- Third-party co-installers in various locations
The following benefits result from maintaining a single, central store as an authoritative point from which to install driver files when new PnP devices are detected:
- Allows for potentially faster device installations, more reliable driver rollback, and a single standard for uninstalling drivers
- Allows you to protect drivers by using WRP
- Uses index files to minimize the performance impact on installing devices when the driver store grows in size as a result of the addition of new packages
In this tutorial:
- Managing Devices and Services
- Understanding Device Installation and Management
- Device Enhancements in Windows 7
- Display Enhancements in Windows 7
- Understanding Device Installation
- Driver Store and Driver Packaging
- Driver Staging vs Installation
- Driver Staging and Installation Process
- Detailed Installation Process
- Managing Driver Packages
- Using PnPutil.exe
- Using Dism.exe
- Driver Signing
- Driver Ranking
- Installing and Using Devices
- Enhancements to the Device Installation Experience in Windows 7
- Scenario 1: Driver found in Driver Store
- Scenario 2: Driver found on Windows Update
- Scenario 3: Driver in Driver Store, But Better Driver on Windows Update
- Scenario 5: No Driver Can Be Found for the device
- Scenario 6: Vendor -supplied media is available
- Scenario 7: Additional Device Software is Available For Download from vendor
- Configuring Device Installation Settings
- Using the Devices And Printers Folder
- Understanding Device Stage
- Understanding the Device Experience Architecture
- Device Containers
- Device display object
- Device Metadata System
- Managing Device Installation Using Group Policy
- Managing Device Installation Behavior
- Managing Driver Installation Behavior
- Blocking Installation of Removable Devices
- Managing Device Redirection Behavior
- Troubleshooting Device Installation
- Using Windows Error Reporting
- Using the SetupAPI Log File
- Using Driver INF Files
- Using Device Manager Error Codes
- Using Driver Verifier
- Repairing Driver Store Corruption
- Repairing Index File Corruption
- Understanding Power Management
- Power Management Enhancements in Windows 7
- New Power Policies in Windows 7
- Configuring Power Management Settings
- Configuring Power Management Settings Using the Power Options Utility in Control Panel
- Configuring Power Management Settings Using Group Policy
- Configuring Power Management Settings Using the Powercfg Utility
- Understanding Services
- Service Enhancements in Windows 7
- Managing Services
- Managing Services Using Task Manager
- Managing Services Using the Sc.exe Command