Oggetti chiave del Registro di sistema
Il driver di sistema PortCls implementa l'interfaccia IRegistryKey per il vantaggio dei driver miniport. Un oggetto IRegistryKey rappresenta una chiave del Registro di sistema. I driver Miniport usano oggetti chiave del Registro di sistema per eseguire le operazioni seguenti:
Creare ed eliminare le chiavi del Registro di sistema
Enumerare le chiavi del Registro di sistema
Eseguire query e impostare le chiavi del Registro di sistema
Quando si esegue una query su un oggetto chiave del Registro di sistema per informazioni su una voce del Registro di sistema nella chiave specificata, la query può restituire le informazioni in uno dei tre formati, ognuna delle quali usa una struttura di query chiave diversa. La tabella seguente mostra i valori di enumerazione KEY_INFORMATION_CLASS che indicano quali delle tre strutture di query chiave vengono restituite dalla query.
valore KEY_INFORMATION_CLASS | Key-Query struttura |
---|---|
KeyBasicInformation |
|
KeyFullInformation |
|
KeyNodeInformation |
Per aprire una chiave del Registro di sistema esistente o creare una nuova chiave del Registro di sistema, un driver di scheda può chiamare la funzione PcNewRegistryKey e un driver miniport può chiamare il metodo IPort del driver di porta::NewRegistryKey . Le due chiamate sono simili, ad eccezione del fatto che la funzione PcNewRegistryKey richiede due parametri aggiuntivi, DeviceObject e SubDevice. Per altre informazioni, vedere PcNewRegistryKey.
Quando un driver miniport crea un nuovo oggetto IRegistryKey , l'oggetto apre una sottochiave esistente o crea una nuova sottochiave del Registro di sistema se non esiste. In entrambi i casi, l'oggetto chiave del Registro di sistema archivia l'handle alla chiave. Quando l'oggetto viene rilasciato in seguito e il numero di riferimenti decrementa su zero, l'oggetto chiude automaticamente il relativo handle alla chiave.
L'interfaccia IRegistryKey supporta i metodi seguenti:
IRegistryKey::EnumerateValueKey