IDs de contêiner geradas de uma ID exclusiva Bus-Specific
A maneira preferencial de gerar uma ID de contêiner para um dispositivo é baseada em uma ID exclusiva específica do barramento. Esse é o método mais preciso e confiável para gerar IDs de contêiner.
O gerenciador de Plug and Play (PnP) usará esse método se o seguinte for verdadeiro:
O dispositivo contém uma ID exclusiva específica do barramento.
O driver de barramento do dispositivo reconhece essa ID exclusiva como presente e bem formatada.
O driver de barramento pode hash confiável da ID exclusiva em um GUID (identificador global exclusivo) e retorna esse GUID em resposta ao código de função IRP_MN_QUERY_ID quando o membro Parameters.QueryId.IdType da estrutura IO_STACK_LOCATION é definido como BusQueryContainerID.
O Windows 7 e versões posteriores do Windows fornecem drivers de caixa de entrada para vários dos tipos de barramento mais comuns. Isso inclui USB, Bluetooth e PnP-X. Para esses tipos de barramento, o dispositivo só é necessário para incluir uma ID exclusiva específica do barramento. O driver de barramento do Windows fornecido lerá a ID exclusiva do dispositivo e criará uma ID de contêiner.
Os tópicos a seguir descrevem como os motoristas de barramento de caixa de entrada geram IDs de contêiner para determinados tipos de barramento:
IDs de contêiner para dispositivos USB
IDs de contêiner para dispositivos Bluetooth
IDs de contêiner para dispositivos PnP-X
IDs de contêiner para dispositivos 1394