Device identification strings

Note

Device identification strings should not be parsed. They are meant only for string comparisons and should be treated as opaque strings.

The Plug and Play (PnP) manager and other device installation components use device identification strings to identify devices installed in a computer.

Windows uses the following device identification strings to locate the driver package that best matches the device. A device's enumerator reports these identification strings. A device's enumerator is a system component that discovers PnP devices based on a PnP hardware standard. PnP Bus Drivers carry out these tasks are in partnership with the PnP manager. The parent bus driver, such as the PCI or PCMCIA bus driver, typically enumerates a device. A bus filter driver, such as the ACPI driver, enumerates some devices.

Windows tries to find a match for one of the hardware IDs or compatible IDs. For more information about how Windows uses these IDs to match a device to a driver package, and how to specify IDs in an INF file, see How Windows Selects Drivers.

In addition to using the preceding IDs to identify devices, the PnP manager uses the following IDs to uniquely identify instances of each device that are installed in a computer:

The PnP manager uses the Container ID device identification string to group one or more device nodes (devnodes). The devnodes are enumerated from each instance of a physical device installed in a computer.

Each enumerator customizes its device IDs, hardware IDs, and compatible IDs to uniquely identify the devices that it enumerates. In addition, each enumerator has its own policy to identify hardware IDs and compatible IDs. For more information about hardware ID and compatible ID formats for most of the system buses, see Device Identifier Formats.

See also