Requisitos de WMI para controladores WDM

Un controlador que controla los registros IRP con WMI como proveedor de datos. Los controladores de puerto de almacenamiento proporcionados por el sistema, los controladores de clase y los controladores de protocolo NDIS se dividen en esta categoría. Para obtener información sobre cómo registrarse como proveedor de datos WMI, vea Registro como proveedor de datos WMI.

Un controlador que no controla los IRP simplemente debe reenviar solicitudes WMI al controlador siguiente inferior de la pila de controladores. A continuación, el controlador siguiente inferior se registra con WMI y controla las solicitudes de WMI en nombre del primer controlador. Por ejemplo, los controladores de miniporte SCSI y los controladores de minipuerto NDIS pueden registrarse como proveedores de WMI y proporcionar datos WMI a sus controladores de clase correspondientes.

Un controlador que proporciona datos WMI a una clase o controlador de puerto debe admitir las interfaces WMI específicas del tipo de controlador definidas por la clase o el controlador de puerto. Por ejemplo, un controlador de miniporte SCSI debe establecer WmiDataProvider en TRUE en la estructura PORT_CONFIGURATION_INFORMATION y controlar las solicitudes SRB_FUNCTION_WMI del controlador de puerto SCSI.

Del mismo modo, un controlador de miniporte NDIS orientado a la conexión que define bloques de datos personalizados debe admitir OID_GEN_CO_SUPPORTED_GUIDS; De lo contrario, NDIS asigna esos IDENTIFICADORes y indicaciones de estado devueltos de OID_GEN_SUPPORTED_LIST que son comunes y conocidos por NDIS a GUID definidos por NDIS.

En las secciones siguientes se describe cómo admitir WMI en un controlador que controla los IRP.