Partilhar via


Registrando-se como um provedor de dados WMI

Um driver que suporta WMI deve se registrar como um provedor de dados WMI para disponibilizar seus dados e blocos de eventos para clientes WMI. Um driver normalmente regista-se no WMI ao iniciar o seu dispositivo, depois de o dispositivo ter sido inicializado até ao ponto em que o driver pode lidar com WMI IRPs. Durante o processo de registo, o driver passa à WMI um ponteiro para o seu objeto de dispositivo e informações sobre os dados e blocos de eventos que suporta.

Um driver se registra no WMI em duas fases:

  1. O controlador chama IoWMIRegistrationControl com a ação WMIREG_ACTION_REGISTER e um ponteiro para o objeto de dispositivo passado para a rotina AddDevice do controlador.

  2. O driver lida com a solicitação de IRP_MN_REGINFO ou IRP_MN_REGINFO_EX que o WMI envia em resposta à chamada IoWMIRegistrationControl do driver. O membro Parameters.WMI.DataPath do IRP é definido como WMIREGISTER e Parameters.WMI.ProviderId é definido como o ponteiro de objeto de dispositivo do driver. O driver fornece ao WMI informações de registro sobre seus dados e blocos de eventos, usando a Biblioteca WMI conforme descrito em Usando a Biblioteca WMI para registrar blocos ou manipulando as solicitações de IRP_MN_REGINFO ou IRP_MN_REGINFO_EX conforme descrito em Manipulando IRP_MN_REGINFO e IRP_MN_REGINFO_EX para registrar blocos.