WNODE_SINGLE_INSTANCE 結構 (wmistr.h)
WNODE_SINGLE_INSTANCE 結構包含一個數據區塊實例中所有數據項的值。
語法
typedef struct tagWNODE_SINGLE_INSTANCE {
struct _WNODE_HEADER WnodeHeader;
ULONG OffsetInstanceName;
ULONG InstanceIndex;
ULONG DataBlockOffset;
ULONG SizeDataBlock;
UCHAR VariableData[];
} WNODE_SINGLE_INSTANCE, *PWNODE_SINGLE_INSTANCE;
成員
WnodeHeader
這是 一個WNODE_HEADER 結構,其中包含所有 WNODE_XXX 結構通用的資訊,例如緩衝區大小、代表與要求相關聯之數據區塊的 GUID,以及提供所傳遞或傳回 之WNODE_XXX 數據相關信息的旗標。
OffsetInstanceName
指出從這個結構的開頭到此實例動態實例名稱的位移,並對齊 USHORT 界限。 只有在 WnodeHeader.Flags 中清除WNODE_FLAG_STATIC_INSTANCE_NAMES時,此成員才有效。 如果數據區塊已註冊靜態實例名稱,WMI 會忽略 OffsetInstanceName。
InstanceIndex
指出使用靜態實例名稱註冊之實例的索引。 只有在 WnodeHeader.Flags 中設定WNODE_FLAG_STATIC_INSTANCE_NAMES時,此成員才有效。 如果數據區塊已註冊動態實例名稱,WMI 會忽略 InstanceIndex。
DataBlockOffset
指出從這個 結構的開頭到實例開頭的位移。
SizeDataBlock
指出這個實例的數據區塊大小。
VariableData
包含其他數據,包括動態實例名稱,以便在8位元組界限上開始填補,以及要傳回之數據區塊的實例。
備註
WMI 會傳遞具有IRP_MN_CHANGE_SINGLE_INSTANCE要求WNODE_SINGLE_INSTANCE,以在數據區塊的實例中設定讀取/寫入數據項。 驅動程式可以忽略針對 實例中只讀數據項傳遞的值。
驅動程式會填入 WNODE_SINGLE_INSTANCE ,以回應 IRP_MN_QUERY_SINGLE_INSTANCE 要求,或產生包含單一實例的事件。
規格需求
需求 | 值 |
---|---|
標頭 | wmistr.h (包括 Wmistr.h) |