WdfDriverOpenParametersRegistryKey, fonction (wdfdriver.h)

[S’applique à KMDF et UMDF]

La méthode WdfDriverOpenParametersRegistryKey ouvre la clé de Registre Parameters du pilote et récupère un handle dans un objet de clé de registre d’infrastructure qui représente la clé.

Syntaxe

NTSTATUS WdfDriverOpenParametersRegistryKey(
  [in]           WDFDRIVER              Driver,
  [in]           ACCESS_MASK            DesiredAccess,
  [in, optional] PWDF_OBJECT_ATTRIBUTES KeyAttributes,
  [out]          WDFKEY                 *Key
);

Paramètres

[in] Driver

Handle de l’objet de pilote d’infrastructure du pilote que le pilote a obtenu à partir d’un appel précédent à WdfDriverCreate ou WdfGetDriver.

[in] DesiredAccess

Valeur de type ACCESS_MASK qui spécifie un masque d’accès pour la clé de Registre Parameters .

Un pilote KMDF demande généralement KEY_READ, KEY_WRITE ou KEY_READ | KEY_WRITE.

Si vous écrivez un pilote UMDF, utilisez KEY_READ ou KEY_READ | KEY_SET_VALUE.

Comme meilleure pratique, demandez uniquement les types d’accès dont votre pilote a besoin.

[in, optional] KeyAttributes

Pointeur vers une structure de WDF_OBJECT_ATTRIBUTES allouée à l’appelant qui spécifie les attributs d’objet pour l’objet de clé de Registre framework. Ce paramètre est facultatif et peut être WDF_NO_OBJECT_ATTRIBUTES.

[out] Key

Pointeur vers un emplacement qui reçoit un handle vers un objet de clé de Registre d’infrastructure.

Valeur retournée

WdfDriverOpenParametersRegistryKey retourne STATUS_SUCCESS si l’opération réussit. Les valeurs de retour supplémentaires sont les suivantes :

Code de retour Description
STATUS_ACCESS_DENIED
Un pilote UMDF a spécifié l’un des indicateurs suivants dans le paramètre DesiredAccess :
  • GENERIC_WRITE
  • KEY_CREATE_SUBKEY
  • WRITE_DAC

Étant donné que les valeurs ci-dessus ne sont pas valides pour les pilotes UMDF, les indicateurs universels tels que GENERIC_ALL et STANDARD_RIGHTS_ALL également entraîner l’échec de WdfDriverOpenParametersRegistryKey avec cette valeur de retour.

 

Pour plus d’informations sur les valeurs de retour, consultez Erreurs de création d’objet Framework.

Cette méthode peut également retourner d’autres valeurs NTSTATUS.

Un bogue système case activée se produit si un pilote KMDF spécifie un handle non valide dans Driver.

Remarques

La clé Paramètres du pilote se trouve dans l’arborescence Services du Registre. Si la clé Parameters du pilote n’existe pas, la méthode WdfDriverOpenParametersRegistryKey la crée.

Une fois que le pilote a terminé d’utiliser la clé de Registre Parameters , il doit appeler WdfRegistryClose.

Notes

UMDF ne prend pas en charge la création de sous-clés.

Pour plus d’informations sur le Registre, consultez Utilisation du Registre dans les pilotes Framework-Based.

Exemples

L’exemple de code suivant ouvre la clé de Registre Parameters d’un pilote et obtient un handle pour un objet de clé de Registre d’infrastructure qui représente la clé.

WDFKEY hKey;

status = WdfDriverOpenParametersRegistryKey(
                                            Driver,
                                            STANDARD_RIGHTS_ALL,
                                            WDF_NO_OBJECT_ATTRIBUTES,
                                            &hKey
                                            );

Configuration requise

Condition requise Valeur
Plateforme cible Universal
Version KMDF minimale 1.0
Version UMDF minimale 2.0
En-tête wdfdriver.h (inclure Wdf.h)
Bibliothèque Wdf01000.sys (KMDF) ; WUDFx02000.dll (UMDF)
IRQL PASSIVE_LEVEL
Règles de conformité DDI DriverCreate(kmdf), KmdfIrql(kmdf), KmdfIrql2(kmdf), KmdfIrqlExplicit(kmdf)

Voir aussi

ACCESS_MASK

WDF_OBJECT_ATTRIBUTES

WdfDriverCréer

WdfDriverGetRegistryPath

WdfGetDriver

WdfRegistryClose