共用方式為


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和IoWMISet Xxx例程來讀取和寫入 WMI 類別屬性。 使用 IoWMIExecuteMethod來執行 WMI 類別方法,並使用 IoWMISetNotificationCallback 來註冊 WMI 事件通知回呼。

一旦不再需要 ,請使用 ObDereferenceObject 關閉數據區塊物件。

規格需求

需求
最低支援的用戶端 可在 Windows XP 和更新版本的 Windows 作業系統中使用。
目標平台 Universal
標頭 wdm.h (包含 Ntddk.h、Ntifs.h。WMIGUID_XXX值會在 Wmistr.h 中宣告。若要使用它們,請包含 Wmistr.h.)
程式庫 NtosKrnl.lib
Dll NtosKrnl.exe
IRQL <= APC_LEVEL

另請參閱

IoWMIExecuteMethod

IoWMIQueryAllData

IoWMIQueryAllDataMultiple

IoWMIQuerySingleInstance

IoWMIQuerySingleInstanceMultiple

IoWMISetNotificationCallback

IoWMISetSingleInstance

IoWMISetSingleItem

ZwClose