共用方式為


WNODE_METHOD_ITEM結構 (wmistr.h)

WNODE_METHOD_ITEM 結構表示與數據區塊實例相關聯的方法,並包含方法的任何輸入數據。

語法

typedef struct tagWNODE_METHOD_ITEM {
  struct _WNODE_HEADER WnodeHeader;
  ULONG                OffsetInstanceName;
  ULONG                InstanceIndex;
  ULONG                MethodId;
  ULONG                DataBlockOffset;
  ULONG                SizeDataBlock;
  UCHAR                VariableData[];
} WNODE_METHOD_ITEM, *PWNODE_METHOD_ITEM;

成員

WnodeHeader

這是 WNODE_HEADER 結構,其中包含所有 WNODE_XXX 結構通用的資訊,例如緩衝區大小、代表與要求相關聯的數據區塊的 GUID,以及提供所傳遞或傳回 之WNODE_XXX 數據相關信息的旗標。

OffsetInstanceName

指出從這個 結構的開頭到此實例動態實例名稱的位元組位移,並對齊 USHORT 界限。 只有在 WnodeHeader.Flags 中清除WNODE_FLAG_STATIC_INSTANCE_NAMES時,此成員才有效。 如果數據區塊已註冊靜態實例名稱,WMI 會忽略 OffsetInstanceName

InstanceIndex

將這個實例的索引指出為此數據區塊的驅動程式靜態實例名稱清單。 只有當數據區塊已向靜態實例名稱註冊,且WNODE_FLAG_STATIC_INSTANCE_NAMES是在 WnodeHeader.Flags 中設定時,這個成員才有效。 如果數據區塊已註冊動態實例名稱,WMI 會忽略 InstanceIndex

MethodId

指定要執行之方法的識別碼。

DataBlockOffset

指出從輸入 開頭到 方法輸入數據WNODE_METHOD_ITEM的位移,或是從輸出開頭 WNODE_METHOD_ITEM 到方法輸出數據的位移。

SizeDataBlock

指出輸入 WNODE_METHOD_ITEM中輸入數據的大小,如果沒有輸入,則為零。 在輸出 WNODE_METHOD_ITEM中, SizeDataBlock 會指出輸出數據的大小,如果沒有輸出,則為零。

VariableData

包含其他數據,包括動態實例名稱,以及在8位元組界限上對齊之方法的輸入或輸出。

備註

WMI 會傳遞 具有 IRP_MN_EXECUTE_METHOD要求WNODE_METHOD_ITEM ,以指定要在數據區塊實例中執行的方法,以及方法所需的任何輸入數據。

如果方法產生輸出,驅動程式會以 IrpStack-Parameters.WMI.Buffer> 緩衝區緩衝區中的 DataBlockOffset 輸出覆寫輸入數據,並在WNODE_METHOD_ITEM中設定 SizeDataBlock 以指定輸出數據的大小。

規格需求

需求
標頭 wmistr.h (包含 Wmistr.h)

另請參閱

WNODE_HEADER