Receber notificações de eventos
As consultas de eventos são usadas por consumidores de eventos temporários, consumidores de eventos permanentes e provedores de eventos. Os consumidores de eventos usam consultas de eventos para especificar eventos de interesse, e os provedores de eventos usam as consultas para especificar os eventos que eles fornecem.
Os consumidores temporários colocam consultas em chamadas para o IWbemServices::ExecNotificationQuery ou para o método IWbemServices::ExecNotificationQueryAsync. Os consumidores de eventos permanentes colocar consultas na propriedade Query de uma instância da classe __EventFilter system.
Os provedores de eventos usam consultas de eventos para se registar para suportar um ou mais tipos de eventos. Eles colocam consultas na propriedade EventQueryList de uma instância da classe de sistema __EventProviderRegistration. Todos os provedores de eventos criam uma instância __EventProviderRegistration para se registrar no WMI (Instrumentação de Gerenciamento do Windows). Para obter mais informações, consulte Registar um Provedor de Eventos.
Os consumidores e provedores de eventos usam a instrução SELECT e uma cláusula WHERE relacionada para consultas de eventos, além de uma variedade de extensões específicas para a Linguagem de Consulta WMI (WQL). As extensões são usadas para proteger os consumidores de serem inundados com notificações que ocorrem com demasiada frequência para serem úteis.
Os consumidores que não exigem notificação sempre que ocorre um evento podem especificar as seguintes cláusulas em suas consultas:
As cláusulas WITHIN e HAVING afetam o tempo dos eventos, e a cláusula GROUP faz com que um evento representativo seja enviado no lugar de um evento que ocorre com frequência.