Función WdfDeviceOpenDevicemapKey (wdfdevice.h)

[Se aplica a KMDF y UMDF]

El método WdfDeviceOpenDevicemapKey abre la clave DEVICEMAP y crea un objeto de clave del Registro de marco que representa la clave del Registro.

Sintaxis

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

Parámetros

[in] Device

Identificador de un objeto de dispositivo de marco.

[in] KeyName

Puntero a una estructura UNICODE_STRING que especifica el nombre de la subclave que se va a abrir en DEVICEMAP.

[in] DesiredAccess

Valor con tipo ACCESS_MASK que especifica los derechos de acceso que solicita el controlador para la clave del Registro especificada.

Un controlador KMDF normalmente solicita KEY_READ, KEY_WRITE o KEY_READ | KEY_WRITE.

Normalmente, un controlador UMDF solicita KEY_READ o KEY_SET_VALUE.

[in, optional] KeyAttributes

Puntero a una estructura WDF_OBJECT_ATTRIBUTES que contiene atributos proporcionados por el controlador para el nuevo objeto de clave del Registro. Este parámetro es opcional y puede ser WDF_NO_OBJECT_ATTRIBUTES.

[out] Key

Puntero a una ubicación que recibe un identificador para el nuevo objeto de clave del Registro. The

Valor devuelto

WdfDeviceOpenDevicemapKey devuelve STATUS_SUCCESS si la operación se realiza correctamente. De lo contrario, el método podría devolver uno de los siguientes valores:

Código devuelto Descripción
STATUS_INVALID_DEVICE_REQUEST

No se llamó a WdfDeviceOpenDevicemapKey en IRQL = PASSIVE_LEVEL.

STATUS_INVALID_PARAMETER
Se especificó un parámetro no válido. En el caso de UMDF, este valor devuelto puede indicar derechos de acceso insuficientes.
STATUS_INSUFFICIENT_RESOURCES
No se pudo asignar un objeto de clave del Registro.
STATUS_OBJECT_NAME_NOT_FOUND
La clave del Registro especificada no existe.
 

Para obtener una lista de otros valores devueltos que puede devolver el método WdfDeviceOpenDevicemapKey , vea Errores de creación de objetos de marco.

El método podría devolver otros valores NTSTATUS.

Se produce una comprobación de errores si el controlador proporciona un identificador de objeto no válido.

Comentarios

El Registro contiene una clave HKEY_LOCAL_MACHINE\HARDWARE\DEVICEMAP que usan algunos controladores para tecnologías anteriores, como puertos serie y paralelo. Si el controlador admite una tecnología que usa la clave DEVICEMAP , el controlador puede acceder a subclaves y valores bajo la clave llamando a WdfDeviceOpenDevicemapKey.

WdfDeviceOpenDevicemapKey devuelve una clave volátil. Esto significa que la información no se conserva cuando se descarga el subárbol del Registro correspondiente.

Cuando el controlador haya terminado de usar la clave del Registro que abrió con WdfDeviceOpenDevicemapKey, el controlador debe llamar a WdfRegistryClose.

Para obtener más información sobre el registro, las claves de hardware y software y los objetos del Registro, vea Using the Registry in Framework-Based Drivers.

Requisitos

Requisito Value
Plataforma de destino Universal
Versión mínima de KMDF 1.15
Versión mínima de UMDF 2.15
Encabezado wdfdevice.h (incluir Wdf.h)
Library Wdf01000.sys (KMDF); WUDFx02000.dll (UMDF)
IRQL PASSIVE_LEVEL

Consulte también

WdfDeviceOpenRegistryKey

WdfFdoInitOpenRegistryKey