Device Driver Tools and Settings
Applies To: Windows Server 2003, Windows Server 2003 R2, Windows Server 2003 with SP1, Windows Server 2003 with SP2
Device Driver Tools and Settings
In this section
Device Driver Tools
Device Driver Registry Entries
Device Driver Group Policy Settings
Device Driver WMI Classes
Related Information
This section describes tools, registry entries, Group Policy settings, and Windows Management Instrumentation (WMI) classes associated with device drivers.
Device Driver Tools
The following tools are associated with device drivers.
ChkINF.exe: INF File Syntax Checker
Category
ChkINF.exe ships with the Windows Driver Development Kit.
Version compatibility
Windows 2000, Windows XP, and Windows Server 2003
ChkINF checks the structure and syntax of Windows Server 2003 driver .inf files. Results are presented in HTML format and include a list of the errors and warnings detected in each .inf file, with each error and warning shown next to the errant .inf file entry.
DevCon.exe: Device Console
Category
Device Console ships with the Windows Driver Development Kit.
Version compatibility
Windows 2000, Windows XP, and Windows Server 2003
Device Console (Devcon) is a command-line tool that displays detailed information about devices and lets you search for and manipulate devices from the command line. Devcon enables, disables, installs, configures, and removes devices on the local computer and displays detailed information about devices on local and remote computers.
For more information about Devcon.exe and the syntax used to carry out commands, see the Windows Driver Development Kit.
GenINF.exe: INF File Creation Wizard
Category
GenINF ships with the Windows Driver Development Kit.
Version compatibility
GenINF generates .inf files for Windows 2000, Windows XP, and Windows Server 2003.
GenINF is a GUI-based tool that guides users through the process of creating device driver .inf files. GenINF does not generate fully valid .inf files. However, the skeleton .inf files that it generates should help developers complete their device driver .inf files.
GenINF is located in the \Tools subdirectory of the DDK installation directory. Because GenINF is GUI-based, you can execute it from within the Windows Server 2003 user interface or from the command prompt. The command to start GenINF takes no arguments. GenINF supports all device classes but includes specific support for only certain device classes. For a list of these classes, see the Geninf.htm file located in the Tools\geninf subdirectory of the DDK.
For more information about GenINF.exe, see the Windows Driver Development Kit.
SigVerif.exe: File Signature Verification
Category
Operating system tool
Version compatibility
Windows XP, Windows 2000, and Windows Server 2003
File Signature Verification checks to see which system files and device driver files are digitally signed and displays its findings. If you have enabled logging, the search results are also written to a log file.
Device Driver Registry Entries
The following registry entries are associated with device drivers.
The information here is provided as a reference for use in troubleshooting or verifying that the required settings are applied. It is recommended that you do not directly edit the registry unless there is no other alternative. Modifications to the registry are not validated by the registry editor or by Windows before they are applied, and as a result, incorrect values can be stored. This can result in unrecoverable errors in the system. When possible, use Group Policy or other Windows tools — such as Microsoft Management Console (MMC), Device Manager, or the software that accompanies a device — to accomplish tasks rather than editing the registry directly. If you must edit the registry, use extreme caution.
Note
- Because many of the device driver subkeys and registry entries are hardware-specific, the following section contains only a partial list of registry keys and entries.
Enum
This registry key is located at HKEY_LOCAL_MACHINE\SOFTWARE\Enum.
This class key stores the enumeration information for Plug and Play devices. Under Enum, each enumerator gets its own branch, with one child under the enumerator for each device it has ever enumerated and set up. There is a special enumerator branch, Enum\Root; this branch contains registry entries for legacy hardware that is not Plug and Play for which there is no enumerator but that can be detected using other means. Device Installer creates new registry entries when an enumerator detects a device for which there is no registry entry.
Class
The following registry entries are located under HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Class.
The Class subkey stores configuration data for classes of hardware devices displayed in Device Manager.
Each subkey in the Class subkey represents a device class and is named by the globally unique identifier (GUID) for the class: a 16-byte value generated from the unique identifier on a device, the current date and time, and a sequence number. A GUID is used to identify a particular device or component.
{Class-GUID}
Registry path
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Class
Version
Microsoft Windows NT 4.0 Server and Windows NT 4.0 Workstation and later
The {Class-GUID} subkey represents the component associated with the class-GUID.
Each {Class-GUID} subkey in the Class subkey represents a device class and is named by the GUID for the class, which is a 16-byte value generated from the unique identifier on a device, the current date and time, and a sequence number. A GUID identifies a particular device or component.
It appears as a 16-digit alphanumeric string within curly braces. These {Class-GUID} subkeys store configuration data that apply to the entire class of devices, such as the class of all modems.
Within the {Class-GUID} subkeys are 4-digit numbered subkeys, which represent particular devices that are instances of the class. These subkeys store data that apply only to that device.
Because the Class subkey is hardware-specific, its contents vary widely and it is dependent upon the devices installed on a system.
Services
This registry key is located at HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services.
Services registry keys and entries define background operations by device drivers or other tasks. The Services key includes a number of subkeys for such services as ACPI or Plug and Play. Registry entries for each subkey vary, but each subkey may include some of the following registry entries.
Description
Registry path
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Subkey
Version
Windows XP, Windows 2000, Windows Server 2003
Text field that displays the description of the service.
DisplayName
Registry path
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Subkey
Version
Windows XP, Windows 2000, Windows Server 2003
Text field that displays the default service name.
ErrorControl
Registry path
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Subkey
Version
Windows XP, Windows 2000, Windows Server 2003
Tells the system how to boot if a device driver fails. The following table lists the accepted values for this registry entry.
ErrorControl Values
Value | Description |
---|---|
00 |
Ignore. If the driver fails to load or initialize, then startup continues as normal and no warning message appears. |
01 |
Normal. If the driver fails to load or initialize, then startup proceeds, but a warning message appears. |
02 |
Severe. If the driver fails to load or initialize, then startup is declared to have failed and restarts by using the LastKnownGood control set. If startup is already using the LastKnownGood control set, then startup continues |
03 |
Critical. If the driver fails to load or initialize, then startup is declared to have failed and restarts by using the LastKnownGood control set. If startup is already using the LastKnownGood control set, then startup stops and enters Debugging Mode. |
Group
Registry path
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Subkey
Version
Windows XP, Windows 2000, Windows Server 2003
Specifies which group the service belongs to when a service is started
ImagePath
Registry path
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Subkey
Version
Windows XP, Windows 2000, Windows Server 2003
Location of Services Control Manager, which uses the information located in the subkeys to initialize the services. The default path is %SystemRoot%\system32\services.exe.
Start
Registry path
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Subkey
Version
Windows XP, Windows 2000, Windows Server 2003
Determines when a service should be started on a system. The following table lists the accepted values for this registry entry.
Start Values
Value | Description |
---|---|
00 |
Boot. Starts the service during the boot sequence. |
01 |
System. Starts the service when loaded by the I/O subsystem in the kernel. |
02 |
Automatic. Starts the service automatically. |
03 |
Manual. Starts the service when a user initiates it from the control panel or a command line. |
04 |
Disable. Loads the service, but neither the system nor a user can start it. |
Type
Registry path
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Subkey
Version
Windows XP, Windows 2000, Windows Server 2003
Identifies the type of service. The following table lists the accepted values for this registry entry.
Type Values
Value | Description |
---|---|
01 |
Kernel-mode device driver |
02 |
File system driver |
04 |
Network adapter |
10 |
Win32 service that can run as a standalone process |
20 |
Win32 service that shares address space with other services at the same time |
Device Driver Group Policy Settings
The following table lists and describes the Group Policy settings that are associated with device drivers.
Group Policy Settings Associated with Device Drivers
Group Policy Setting | Description |
---|---|
Administrator_Power_Policy |
Defines limits to certain power policy values that are applied globally to all users' power schemes. |
Global_Machine_Power_Policy |
Contains global computer power policy settings that apply to all power schemes for all users. |
Global_Power_Policy |
Contains global power policy settings that apply to all power schemes. |
Global_User_Power_Policy |
Contains global user power policy settings that apply to all power schemes. |
Machine_Power_Policy |
Contains computer power policy settings that are unique to each power scheme on the computer. |
Machine_Processor_Power_Policy |
Contains processor power policy settings that apply while the system is running on AC power or battery power. |
Power_Action_Policy |
Contains information used to set the system power state. |
Power_Policy |
Contains power policy settings that are unique to each power scheme. |
Processor_Power_Policy |
Contains information about processor performance control. |
Remove Computer from Docking Station |
Determines whether a user can undock a portable computer from its docking station without logging on. If this policy is set, the user must log on before removing the portable computer from its docking station. If this policy is not set, the user can remove the portable computer from its docking station without logging on. |
Allow undock without having to log on |
Determines whether a user must log on to request that a portable computer be removed from a docking station. If this policy is not set, the user must log on to request an undock, at which time the user must have been granted the Remove Computer from Docking Station privilege. If this policy is set, a user can request an undock by pressing the portable computer's physical eject button. |
Allowed to format and eject removable media |
Determines who is allowed to format and eject removable NTFS media. This capability can be given to Administrators, Administrators and Power Users, or Administrators and Interactive Users. |
Prevent users from installing printer drivers |
Determines who is allowed to install a printer driver as part of adding a network printer. For a computer to print to a network printer, the driver for that network printer must be installed on the local computer. If this policy is set, only Administrators and Power Users can install a printer driver as part of adding a network printer. If this policy is not set, any user can install a printer driver as part of adding a network printer. You can use this setting to prevent unprivileged users from downloading and installing an untrusted printer driver. |
Restrict CD-ROM access to locally logged-on user |
Determines whether a CD-ROM is accessible to both local and remote users simultaneously. If this policy is set, it allows only the interactively logged-on user to access removable CD-ROM media. If this policy is set and no one is logged on interactively, the CD-ROM can be accessed over the network. |
Restrict floppy access to locally logged-on user only |
Determines whether removable floppy media are accessible to both local and remote users simultaneously. If this policy is set, it allows only the interactively logged-on user to access removable floppy media. If this policy is set and no one is logged on interactively, the floppy can be accessed over the network. |
Unsigned driver installation behavior |
Determines what happens when an attempt is made to install a device driver (by means of Setup API) that has not been certified by the Windows Hardware Quality Lab (WHQL). |
Device Driver WMI Classes
The Windows Server 2003 Driver Development Kit (DDK) covers WMI classes that are associated with device drivers. For more information about the Windows Server 2003 device driver classes, see "Microsoft Windows Driver Development Kits" on the Microsoft Web site.
WMI Classes Associated with Device Drivers
Class Name | Namespace | Version Compatibility |
---|---|---|
WMIBinaryMofResource |
\root\wmi |
Windows XP, Windows 2000 Professional, Windows Server 2000, Windows NT Server 4.0 SP4 and later, Windows Server 2003 |
Related Information
The following resources contain additional information that is relevant to this section.
"Registry Reference" in the Tools and Settings Collection
"Microsoft Windows Driver Development Kits" on the Microsoft Web site