WNODE_SINGLE_INSTANCE 構造体 (wmistr.h)
WNODE_SINGLE_INSTANCE構造体には、データ ブロックの 1 つのインスタンス内のすべてのデータ項目の値が含まれています。
構文
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
バッファー サイズ、要求に関連付けられたデータ ブロックを表す GUID、渡されるまたは返されるWNODE_XXX データに関する情報を提供するフラグなど、すべてのWNODE_XXX 構造体に共通する情報を含むWNODE_HEADER構造体です。
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を渡します。 ドライバーは、インスタンス内の読み取り専用データ項目に渡された値を無視できます。
ドライバーは、 IRP_MN_QUERY_SINGLE_INSTANCE 要求に応答して WNODE_SINGLE_INSTANCE を入力するか、単一のインスタンスで構成されるイベントを生成します。
要件
要件 | 値 |
---|---|
Header | wmistr.h (Wmistr.h を含む) |