勇芳软件工作室.汉化:  Windows Management Instrumentation > Creating WMI Clients > Querying with WQL >

Receiving Event Notifications

Previous pageReturn to chapter overviewNext page

事件查询由临时事件消费者,永久事件消费者和事件提供者使用。事件消费者使用事件查询来指定感兴趣的事件,事件提供者使用查询来指定它们提供的事件。

 

临时消费者通过致电IWbemServices.ExecNotificationQueryIWbemServices.ExecNotificationQueryAsync方法查询。永久事件消费者在__EventFilter系统类的实例的询问属性中查询。

 

事件提供者使用事件查询来注册以支持一种或多种类型的事件。他们在__EventProviderRegistration系统类的实例的EventQueryList属性中放置查询。所有事件提供者创建一个__EventProviderRegistration实例以注册Windows管理规范(WMI)。有关更多信息,请参阅注册事件提供程序。

 

事件消费者和提供商使用SELECT语句和相关的WHERE子句进行事件查询,以及WMI查询语言(WQL)特有的各种扩展。这些扩展用于保护消费者免于被频繁发生的通知所淹没,无法使用。

 

每次发生事件时都不需要通知的消费者可以在查询中指定以下条款:

 

·WITHIN子句
·GROUP子句
·HAVING子句

 

WITHIN和HAVING子句影响事件的时间,GROUP子句会导致代表事件发送,而不是频繁发生的事件。