Requisitos de WMI para drivers WDM
Um driver que lida com registros IRPs com WMI como um provedor de dados. Drivers de porta de armazenamento fornecidos pelo sistema, drivers de classe e drivers de protocolo NDIS se enquadram nessa categoria. Para obter informações sobre como se registrar como um provedor de dados WMI, consulte Registrando-se como um provedor de dados WMI.
Um driver que não lida com IRPs deve simplesmente encaminhar solicitações WMI para o driver mais baixo na pilha de driver. O driver inferior seguinte, em seguida, registra-se com WMI e lida com solicitações WMI em nome do primeiro driver. Por exemplo, drivers de miniporta SCSI e drivers de miniporta NDIS podem se registrar como provedores WMI e fornecer dados WMI para seus drivers de classe correspondentes.
Um driver que fornece dados WMI para um driver de classe ou porta deve dar suporte às interfaces WMI específicas do tipo driver definidas pela classe ou pelo driver de porta. Por exemplo, um driver de miniporto SCSI deve definir WmiDataProvider como TRUE na estrutura PORT_CONFIGURATION_INFORMATION e manipular SRB_FUNCTION_WMI solicitações do driver de porta SCSI.
Da mesma forma, um driver de miniporta NDIS orientado para conexão que define blocos de dados personalizados deve dar suporte a OID_GEN_CO_SUPPORTED_GUIDS; caso contrário, o NDIS mapeia esses OIDs e status indicações retornadas de OID_GEN_SUPPORTED_LIST comuns e conhecidas pelo NDIS para GUIDs definidos pelo NDIS.
As seções a seguir descrevem como dar suporte ao WMI em um driver que manipula IRPs.