接收事件通知
暫時事件取用者、永久事件取用者和事件提供者會使用事件查詢。 事件取用者會使用事件查詢來指定感興趣的事件,而事件提供者會使用查詢來指定它們所提供的事件。
暫時使用者 在 IWbemServices::ExecNotificationQuery 或 IWbemServices::ExecNotificationQueryAsync 方法的呼叫中執行查詢。 永久事件取用者 將查詢放在 __EventFilter 系統類別實例的 Query 屬性中。
事件提供者 使用事件查詢來註冊以支援一或多種事件類型。 它們會將查詢放在 __EventProviderRegistration 系統類別實例的 EventQueryList 屬性中。 所有事件提供者都會建立 __EventProviderRegistration 實例,以向 Windows Management Instrumentation (WMI) 註冊。 如需詳細資訊,請參閱 註冊事件提供者。
事件取用者和提供者會針對事件查詢使用 SELECT 語句 和相關 WHERE 子句,再加上 WMI 查詢語言 (WQL) 特有的各種擴充功能。 延伸模組是用來保護取用者免於被大量通知所淹沒,因為通知太頻繁而無法使用。
不需要在每次事件發生時收到通知的使用者,可以在查詢中指定下列子句:
WITHIN 和 HAVING 子句會影響事件的時機,而 GROUP 子句會導致傳送代表性事件來取代經常發生的事件。