IoWMIWriteEvent 函式 (wdm.h)
IoWMIWriteEvent 例程會將指定的事件傳遞給使用者模式 WMI 元件,以取得通知。
語法
NTSTATUS IoWMIWriteEvent(
[in, out] PVOID WnodeEventItem
);
參數
[in, out] WnodeEventItem
要傳遞至要求事件通知的使用者模式 WMI 元件之 WNODE_EVENT_ITEM 結構的指標。
傳回值
IoWMIWriteEvent 會從下列清單中傳回狀態代碼:
傳回碼 | 描述 |
---|---|
|
表示 WMI 已成功將事件排入佇列,以傳遞至使用者模式 WMI 元件。 |
|
表示 WMI 服務無法使用。 |
|
表示指定的事件項目超過允許的大小上限。 |
|
表示 WMI 沒有足夠的資源可供 WMI 將事件排入佇列以供傳遞。 |
言論
呼叫端所配置的WNODE_EVENT_ITEM結構,並傳入 WnodeEventItem 必須從非分頁集區配置。 如果 IoWMIWriteEvent 傳回STATUS_SUCCESS,系統會自動釋放事件專案的記憶體。 如果 IoWMIWriteEvent 傳回STATUS_SUCCESS以外的任何專案,則呼叫者有責任釋放緩衝區。
驅動程式應該只針對已啟用 WMI 的事件呼叫 ioWMIWriteEvent 。 這可確保有事件取用者正在等候該事件的指示。
此例程的呼叫端必須在 IRQL <= APC_LEVEL執行,但有一個例外狀況。 當 旗標WNODE_HEADER 結構的成員包含WNODE_FLAG_TRACED_GUID 時,可以在任何 IRQL 呼叫 IoWMIWriteEvent。 (WNODE_HEADER 結構是 WnodeEventItem 參數指向之 WNODE_EVENT_ITEM 結構的成員。
要求
要求 | 價值 |
---|---|
最低支援的用戶端 | 從 Windows 2000 開始提供。 |
目標平臺 | 普遍 |
標頭 | wdm.h (包括 Wdm.h、Ntddk.h、Ntifs.h) |
連結庫 | NtosKrnl.lib |
DLL | NtosKrnl.exe |
IRQL | <= APC_LEVEL (請參閱一節) |