WNODE_SINGLE_ITEM structure (wmistr.h)

The WNODE_SINGLE_ITEM structure contains the value of a single data item in an instance of a data block.

Syntax

typedef struct tagWNODE_SINGLE_ITEM {
  struct _WNODE_HEADER WnodeHeader;
  ULONG                OffsetInstanceName;
  ULONG                InstanceIndex;
  ULONG                ItemId;
  ULONG                DataBlockOffset;
  ULONG                SizeDataItem;
  UCHAR                VariableData[];
} WNODE_SINGLE_ITEM, *PWNODE_SINGLE_ITEM;

Members

WnodeHeader

Is a WNODE_HEADER structure that contains information common to all WNODE_XXX structures, such as the buffer size, the GUID that represents a data block associated with a request, and flags that provide information about the WNODE_XXX data being passed or returned.

OffsetInstanceName

Indicates the offset from the beginning of this structure to the dynamic instance name, if any, aligned on a USHORT boundary. This member is valid only if WNODE_FLAG_STATIC_INSTANCE_NAMES is clear in WnodeHeader.Flags. If the data block was registered with static instance names, WMI ignores OffsetInstanceName.

InstanceIndex

Indicates the index into the driver's list of static instance names of this instance. This member is valid only if the data block was registered with static instance names and WNODE_FLAG_STATIC_INSTANCE_NAMES is set in WnodeHeader.Flags. If the data block was registered with dynamic instance names, WMI ignores InstanceIndex.

ItemId

Specifies the ID of the data item to set.

DataBlockOffset

Indicates the offset from the beginning of this structure to the new value for the data item.

SizeDataItem

Indicates the size of the data item.

VariableData

Contains additional data, including the dynamic instance name if any, padding so the data value begins on an 8-byte boundary, and the new value for the data item.

Remarks

WMI passes a WNODE_SINGLE_ITEM with an IRP_MN_CHANGE_SINGLE_ITEM request to set the value of a data item in an instance of a data block.

A driver builds a WNODE_SINGLE_ITEM to generate an event that consists of a single data item.

Requirements

Requirement Value
Header wmistr.h (include Wmistr.h)

See also

WNODE_EVENT_ITEM

WNODE_HEADER