IoWMIOpenBlock 函式 (wdm.h)
IoWMIOpenBlock 例程會開啟指定 WMI 類別的 WMI 數據區塊物件。
語法
NTSTATUS IoWMIOpenBlock(
[in] LPCGUID Guid,
[in] ULONG DesiredAccess,
[out] PVOID *DataBlockObject
);
參數
[in] Guid
指定 WMI 類別的 GUID。
[in] DesiredAccess
指定數據區塊物件所需的訪問許可權。 呼叫端必須具有特定的訪問許可權,才能執行特定作業。
以下是每個存取權位的描述,以及它允許的作業:
WMIGUID_EXECUTE
數據區塊物件可用來執行 WMI 類別方法。 此旗標必須設定為在數據區塊物件上使用 IoWMIExecuteMethod。
WMIGUID_NOTIFICATION
數據區塊物件可用來註冊事件通知回呼。 此旗標必須設定為使用 IoWMISetNotificationCallback,而且只能用於 WMI 事件區塊。 指定此旗標的呼叫端也必須指定 SYNCHRONIZE 旗標。
WMIGUID_QUERY
數據區塊物件可用來查詢 WMI 類別屬性。 此旗標必須設定為在數據區塊物件上使用任何 IoWMIQueryXxx 例程。
WMIGUID_SET
數據區塊物件可用來設定 WMI 類別屬性。 此旗標必須設定為在數據區塊物件上使用任何 IoWMISetXxx 例程。
[out] DataBlockObject
記憶體位置的指標,其中例程會傳回數據區塊物件的指標。
傳回值
傳回成功時STATUS_SUCCESS,或在失敗時傳回適當的NTSTATUS錯誤碼。
言論
呼叫端會使用 IoWMIOpenBlock,為指定的 WMI 類別 GUID 建立資料區塊物件。 接著,呼叫端可以使用數據區塊對象來讀取或寫入WMI類別屬性、執行 WMI 類別方法,以及註冊 WMI 事件的回呼。
使用 IoWMIQueryXxx 和 IoWMISetXxx 例程來讀取和寫入 WMI 類別屬性。 使用 IoWMIExecuteMethod 來執行 WMI 類別方法,並使用 IoWMISetNotificationCallback 來註冊 WMI 事件通知回呼。
使用 ObDereferenceObject,在不再需要數據區塊對象之後關閉數據區塊物件。
要求
要求 | 價值 |
---|---|
最低支援的用戶端 | 適用於 Windows XP 和更新版本的 Windows作系統。 |
目標平臺 | 普遍 |
標頭 | wdm.h (include Ntddk.h, Ntifs.h.WMIGUID_XXX值會在 Wmistr.h 中宣告。若要使用它們,請包含 Wmistr.h.) |
連結庫 | NtosKrnl.lib |
DLL | NtosKrnl.exe |
IRQL | <= APC_LEVEL |