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)

另请参阅

WNODE_EVENT_ITEM

WNODE_HEADER