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 请求或生成包含单个实例的事件。
要求
要求 | 值 |
---|---|
Header | wmistr.h (包括 Wmistr.h) |