Compartir a través de


Función WdfDeviceAssignMofResourceName (wdfdevice.h)

[Solo se aplica a KMDF]

El método WdfDeviceAssignMofResourceName registra un nombre de recurso MOF para un dispositivo especificado.

Sintaxis

NTSTATUS WdfDeviceAssignMofResourceName(
  [in] WDFDEVICE        Device,
  [in] PCUNICODE_STRING MofResourceName
);

Parámetros

[in] Device

Identificador de un objeto de dispositivo de marco.

[in] MofResourceName

Puntero a una estructura UNICODE_STRING que especifica el nombre de un recurso MOF.

Valor devuelto

Si la operación se realiza correctamente, WdfDeviceAssignMofResourceName devuelve STATUS_SUCCESS. Entre los valores devueltos adicionales se incluyen:

Código devuelto Descripción
STATUS_INVALID_DEVICE_REQUEST
El controlador ya ha llamado A WdfDeviceAssignMofResourceName.
STATUS_INSUFFICIENT_RESOURCES
No hay suficiente memoria disponible.
 

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

Un controlador que proporciona un archivo MOF para admitir WMI debe llamar a WdfDeviceAssignMofResourceName, normalmente desde su función de devolución de llamada EvtDriverDeviceAdd o EvtDevicePrepareHardware . El nombre del recurso MOF es el nombre de archivo que el controlador especifica en una instrucción MofResource en su archivo de script de recursos (RC). Para obtener más información sobre cómo especificar un nombre de recurso MOF, vea Compilar un archivo MOF del controlador.

Un controlador que enumera los dispositivos de un bus puede llamar a WdfDeviceAssignMofResourceName para el dispositivo primario y el marco usará el nombre del recurso MOF del elemento primario para los dispositivos secundarios.

Para obtener más información sobre WMI, vea Compatibilidad con WMI en controladores de Framework-Based.

Ejemplos

En el ejemplo de código siguiente se declara una cadena Unicode que representa un nombre de recurso MOF y, a continuación, se registra el nombre.

NTSTATUS  status;
DECLARE_CONST_UNICODE_STRING(mofRsrcName, MOFRESOURCENAME);

status = WdfDeviceAssignMofResourceName(
                                        Device,
                                        &mofRsrcName
                                        );
if (!NT_SUCCESS(status)) {
    return status;
}

Requisitos

Requisito Value
Plataforma de destino Universal
Versión mínima de KMDF 1.0
Encabezado wdfdevice.h (incluir Wdf.h)
Library Wdf01000.sys (consulte Control de versiones de la biblioteca de marcos).
IRQL PASSIVE_LEVEL
Reglas de cumplimiento de DDI DriverCreate(kmdf), KmdfIrql(kmdf), KmdfIrql2(kmdf), KmdfIrqlExplicit(kmdf)