Partager via


WdfDeviceOpenDevicemapKey, fonction (wdfdevice.h)

[S’applique à KMDF et UMDF]

La méthode WdfDeviceOpenDevicemapKey ouvre la clé DEVICEMAP et crée un objet de clé de Registre d’infrastructure qui représente la clé de Registre.

Syntaxe

NTSTATUS WdfDeviceOpenDevicemapKey(
  [in]           WDFDEVICE              Device,
  [in]           PCUNICODE_STRING       KeyName,
  [in]           ACCESS_MASK            DesiredAccess,
  [in, optional] PWDF_OBJECT_ATTRIBUTES KeyAttributes,
  [out]          WDFKEY                 *Key
);

Paramètres

[in] Device

Handle pour un objet d’appareil d’infrastructure.

[in] KeyName

Pointeur vers une structure UNICODE_STRING qui spécifie le nom de la sous-clé à ouvrir sous DEVICEMAP.

[in] DesiredAccess

Valeur de type ACCESS_MASK qui spécifie les droits d’accès demandés par le pilote pour la clé de Registre spécifiée.

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

Un pilote UMDF demande généralement KEY_READ ou KEY_SET_VALUE.

[in, optional] KeyAttributes

Pointeur vers une structure de WDF_OBJECT_ATTRIBUTES qui contient des attributs fournis par le pilote pour le nouvel objet de clé de Registre. Ce paramètre est facultatif et peut être WDF_NO_OBJECT_ATTRIBUTES.

[out] Key

Pointeur vers un emplacement qui reçoit un handle vers le nouvel objet de clé de Registre. The

Valeur retournée

WdfDeviceOpenDevicemapKey retourne STATUS_SUCCESS si l’opération réussit. Sinon, la méthode peut retourner l’une des valeurs suivantes :

Code de retour Description
STATUS_INVALID_DEVICE_REQUEST

WdfDeviceOpenDevicemapKey n’a pas été appelé dans IRQL = PASSIVE_LEVEL.

STATUS_INVALID_PARAMETER
Un paramètre non valide a été spécifié. Pour UMDF, cette valeur de retour peut indiquer des droits d’accès insuffisants.
STATUS_INSUFFICIENT_RESOURCES
Impossible d’allouer un objet de clé de Registre.
STATUS_OBJECT_NAME_NOT_FOUND
La clé de Registre spécifiée n’existe pas.
 

Pour obtenir la liste des autres valeurs de retour que la méthode WdfDeviceOpenDevicemapKey peut retourner, consultez Erreurs de création d’objets framework.

La méthode peut retourner d’autres valeurs NTSTATUS.

Un bogue case activée se produit si le pilote fournit un handle d’objet non valide.

Remarques

Le Registre contient une clé HKEY_LOCAL_MACHINE\HARDWARE\DEVICEMAP que certains pilotes des technologies plus anciennes, telles que les ports série et parallèle, utilisent. Si votre pilote prend en charge une technologie qui utilise la clé DEVICEMAP , il peut accéder aux sous-clés et aux valeurs sous la clé en appelant WdfDeviceOpenDevicemapKey.

WdfDeviceOpenDevicemapKey retourne une clé volatile. Cela signifie que les informations ne sont pas conservées lorsque la ruche de Registre correspondante est déchargée.

Lorsque le pilote a terminé d’utiliser la clé de Registre qu’il a ouverte avec WdfDeviceOpenDevicemapKey, le pilote doit appeler WdfRegistryClose.

Pour plus d’informations sur le Registre, les clés matérielles et logicielles et les objets du Registre, consultez Utilisation du Registre dans Framework-Based Pilotes.

Configuration requise

Condition requise Valeur
Plateforme cible Universal
Version KMDF minimale 1.15
Version UMDF minimale 2.15
En-tête wdfdevice.h (inclure Wdf.h)
Bibliothèque Wdf01000.sys (KMDF) ; WUDFx02000.dll (UMDF)
IRQL PASSIVE_LEVEL

Voir aussi

WdfDeviceOpenRegistryKey

WdfFdoInitOpenRegistryKey