最終更新:2012-06-05 (火) 06:35:33 (4343d)
MSDN Library/Windows Development/Windows Driver Development/Device and Driver Installation/Design Guide
Top / MSDN Library / Windows Development / Windows Driver Development / Device and Driver Installation / Design Guide
http://msdn.microsoft.com/en-us/library/ff549731(VS.85).aspx
Overview of Device and Driver Installation
- How Windows Installs Devices
- Step 1: The New Device is Identified
- Step 2: A Driver for the Device is Selected
- Step 3: The Driver for the Device is Installed
- Device Installation Components
- System-provided Device Installation Components
- Plug and Play Manager
- Driver Store
- System-provided Device Installation Components
- Vendor-provided Device Installation Components
- Device Installation Files
- Sample Device Installation Files
- Device Installation Types
- System Setup Phases
- How Windows Selects Drivers
- Overview of the Driver Selection Process
- Where Windows Searches for Drivers
- How Windows Ranks Drivers
- How Windows Ranks Drivers (Windows Vista and Later)
- How Windows Ranks Drivers (Windows Server 2003, Windows XP, and Windows 2000)
- Driver Selection and Ranking by Class Installers and Co-installers
- AllSignersEqual? Group Policy (Windows Vista and Later)
Device and Driver Installation Fundamental Topics
- Driver Packages
- Components of a Driver Package
- Installation Component Overview
- Supplying an INF File
- Supplying a Co-Installer
- Supplying Device Installation Applications
- INF Files
- Overview of INF Files
- Looking at an INF File
- Summary of INF Sections
- Summary of INF Directives
- General Guidelines for INF Files
- General Syntax Rules for INF Files
- Specifying the Source and Target Locations for Device Files
- Creating INF Files for Multiple Platforms and Operating Systems
- Combining Platform Extensions with Operating System Versions
- Creating International INF Files
- Specifying Driver Load Order
- Using Dirids
- Overview of INF Files
- Accessing INF Files from a Device Installation Application
- Opening and Closing an INF File
- Retrieving Information from an INF File
- Providing Vendor Icons for the Shell and AutoPlay?
- Driver Signing
- Overview of Digital Signatures for Driver Installation
- Digital Signatures
- Digital Certificates
- Kernel-Mode Code Signing Policy (Windows Vista and Later)
- Managing the Signing Process
- Selecting the Appropriate Signature Type
- Managing the Digital Signature or Code Signing Keys
- Signing Drivers during Development and Test
- Signing Drivers during Development and Test (Windows Vista and Later)
- Signing Drivers during Development and Test (Windows Server 2003, Windows XP, and Windows 2000)
- Signing Drivers for Public Release
- Signing Drivers for Public Release (Windows Vista and Later)
- Signing Drivers for Public Release (Windows Server 2003, Windows XP, and Windows 2000)
- Troubleshooting Install and Load Problems with Signed Driver Packages
- Detecting Driver Load Errors
- Code Integrity Diagnostic System Log Events
- SetupAPI Device Installation Log Entries
- Device Metadata Packages
- Overview of Device Metadata Packages
- Overview of the Device Metadata System
- Windows Metadata and Internet Services
- Device Metadata Retrieval Client
- Device Metadata Store
- Device Metadata Cache
- Device Metadata Package Structure
- Building Device Metadata Packages
- Installing Device Metadata Packages
- Installing Device Metadata Packages to an Offline Windows Image
- Installing Device Metadata Packages from WMIS
- Installing Device Metadata Packages through an Application
- Installing Device Metadata Packages through a Driver Package
- Manually Adding Device Metadata Packages
- How the DMRC Selects a Device Metadata Package
- How the DMRC Determines When to Search the WMIS Server
- Debugging Device Metadata Packages
- Debugging Device Metadata Packages By Using Event Viewer
- Debugging Device Metadata Packages by Using Problem Reports
- Device Metadata Error Codes
- Best Practices for Developing Device Metadata Packages
- Best Practices for Specifying Hardware IDs
- Best Practices for Specifying Model IDs
- Best Practices for Testing the Download of Device Metadata Packages
- Device and Driver Installation Software
- Device and Driver Installation Software Components
- Writing a Co-installer
- Writing a Class Installer
- Finish-Install Wizard Pages
- Finish-Install Actions (Windows Vista and Later)
- Providing Device Property Pages
- Writing a Device Installation Application
- Uninstalling Devices and Driver Packages
- How Devices and Driver Packages are Uninstalled
- Using Device Manager to Uninstall Devices and Driver Packages
- Using SetupAPI to Uninstall Devices and Driver Packages
- Using the DIFx Tools to Uninstall Driver Packages
- Using DIFxApp? to Uninstall Driver Packages
- Using DPInst to Uninstall Driver Packages
- Using DIFxAPI to Uninstall Driver Packages
- Updating Driver Files
Device and Driver Installation Advanced Topics
- Creating Secure Device Installations
- Device Identification and Properties
- Device Identification
- Device Identification Strings
- Device Classes
- Device Properties
- Unified Device Property Model (Windows Vista and Later)
- Device Property Representations (Windows Server 2003, Windows XP, and Windows 2000)
- Device Installations and System Restarts
- Avoiding System Restarts during Device Installations
- Initiating System Restarts During Device Installations
- Device Installations on 64-Bit Systems
- Drivers with Special Installation Requirements
- Installing a Boot-Start Driver
- Installing a Filter Driver
- Installing a Null Driver
- Installing a New Bus Driver
- Using Custom Hardware IDs and Compatible IDs
- Installing a New Device Setup Class for a Bus
- Installing Private Builds of In-box Drivers (Windows Vista and Later)
- Overview of Installing Private Builds of In-box Drivers
- Creating a Private Build of an In-box Driver
- Configuring Windows to Rank Driver Signatures Equally
- Installing the Updated Version of the Driver Package
- Registry Trees and Keys for Devices and Drivers
- Troubleshooting Device and Driver Installations
- Using Device Manager
- Device Manager Error Messages
- Device Manager Details Tab
- Viewing Hidden Devices
- SetupAPI Logging (Windows Vista and Later)
- SetupAPI Text Logs
- SetupAPI Logging Registry Settings
- Using the SetupAPI Logging Functions
- SetupAPI Logging (Windows Server 2003, Windows XP, and Windows 2000)
- Setting SetupAPI Logging Levels
- Interpreting a Sample SetupAPI Log File
- Debugging Device Installations (Windows Vista and Later)
- Enabling Support for Debugging Device Installations
- Debugging Device Installations with a User-mode Debugger
- Debugging Device Installations with the Kernel Debugger (KD)
- Using Device Manager
Best Practices for Device and Driver Installation
- General Guidelines for Device and Driver Installation
- Enumerating Installed Devices
- Accessing and Modifying Registry Values
- Accessing Registry Keys Safely
- Accessing Software and Hardware Keys
- Opening a Device's Hardware Key
- Opening a Device's Software Key
- Modifying Registry Values in a Device's Software Key
- Accessing Device Setup Classes in the Registry
- Enumerating Installed Device Setup Classes
- Opening Registry Keys for a Device Setup Class
- Opening Software Keys for All Devices in a Setup Class
- Accessing Device Interfaces in the Registry
- Enumerating Installed Device Interfaces
- Accessing the Properties of Installed Device Interfaces
- Accessing the Registry by Class Installers and Co-installers
- Modifying Registry Keys by Class Installers and Co-installers
- Modifying Registry Values by Class Installers and Co-installers
- Deleting the Registry Keys of a Device
- Accessing and Modifying Device Properties
- Accessing Device Properties
- Rules for Modifying Device Properties
- Accessing and Modifying Files
- Writing INF Files
- Calling SetupAPI Functions
- Performing Software-First Installations
- Writing Class Installers and Co-Installers