Abrindo a chave de hardware de um dispositivo
Uma chave de hardware é uma subchave do Registro específica do dispositivo que contém informações sobre o dispositivo. Você não deve abrir diretamente a chave de hardware de um dispositivo. Assim como acontece com qualquer chave do Registro, o local ou o formato dessas chaves pode mudar entre diferentes versões do Windows.
Observação
Você deve abrir a chave de hardware de um dispositivo somente depois que o dispositivo correspondente for encontrado. Para obter mais informações sobre esse procedimento, consulte Enumerando dispositivos instalados.
Para abrir ou criar a chave de hardware de um dispositivo, siga estas diretrizes:
Observação
Você deve definir o parâmetro em que fornece o acesso de segurança solicitado às permissões de acesso mínimas necessárias. Você não deve definir esse parâmetro como KEY_ALL_ACCESS. Para obter mais informações sobre como especificar permissões de acesso para acesso ao Registro, consulte Acessando chaves do Registro com segurança.
Para abrir uma chave de hardware existente, use CM_Open_DevNode_Key com uma disposição de RegDisposition_OpenExisting e ulFlags contendo CM_REGISTRY_HARDWARE ou use o parâmetro SetupDiOpenDevRegKey e KeyType de DIREG_DEV.
Para criar uma chave de hardware, use CM_Open_DevNode_Key com uma Disposição de RegDisposition_OpenAlways e ulFlags contendo CM_REGISTRY_HARDWARE ou use o parâmetro SetupDiCreateDevRegKey e KeyType de DIREG_DEV.
Os chamadores no modo kernel devem usar IoOpenDeviceRegistryKey e definir o parâmetro DevInstKeyType como PLUGPLAY_REGKEY_DEVICE.