WNODE_METHOD_ITEM Struktur (wmistr.h)

Die WNODE_METHOD_ITEM-Struktur gibt eine Methode an, die einem instance eines Datenblocks zugeordnet ist, und enthält alle Eingabedaten für die -Methode.

Syntax

typedef struct tagWNODE_METHOD_ITEM {
  struct _WNODE_HEADER WnodeHeader;
  ULONG                OffsetInstanceName;
  ULONG                InstanceIndex;
  ULONG                MethodId;
  ULONG                DataBlockOffset;
  ULONG                SizeDataBlock;
  UCHAR                VariableData[];
} WNODE_METHOD_ITEM, *PWNODE_METHOD_ITEM;

Member

WnodeHeader

Ist eine WNODE_HEADER-Struktur , die Informationen enthält, die allen WNODE_XXX-Strukturen gemeinsam sind, z. B. die Puffergröße, die GUID, die einen Datenblock darstellt, der einer Anforderung zugeordnet ist, und Flags, die Informationen über die WNODE_XXX-Daten bereitstellen, die übergeben oder zurückgegeben werden.

OffsetInstanceName

Gibt den Offset in Bytes vom Anfang dieser Struktur bis zum dynamischen instance Namen dieses instance an, der an einer USHORT-Grenze ausgerichtet ist. Dieser Member ist nur gültig, wenn WNODE_FLAG_STATIC_INSTANCE_NAMES in WnodeHeader.Flags eindeutig ist. Wenn der Datenblock mit statischen instance Namen registriert wurde, ignoriert WMI OffsetInstanceName.

InstanceIndex

Gibt den Index dieses instance in die Liste der statischen instance Namen des Treibers für diesen Datenblock an. Dieser Member ist nur gültig, wenn der Datenblock mit statischen instance Namen registriert wurde und WNODE_FLAG_STATIC_INSTANCE_NAMES in WnodeHeader.Flags festgelegt ist. Wenn der Datenblock mit dynamischen instance Namen registriert wurde, ignoriert WMI InstanceIndex.

MethodId

Gibt die ID der auszuführenden Methode an.

DataBlockOffset

Gibt den Offset vom Anfang eines Eingabe-WNODE_METHOD_ITEM an, um Daten für die -Methode einzugeben, oder den Offset vom Anfang einer Ausgabe WNODE_METHOD_ITEM , um Daten aus der -Methode auszugeben.

SizeDataBlock

Gibt die Größe der Eingabedaten in einer Eingabe WNODE_METHOD_ITEM oder null an, wenn keine Eingabe vorhanden ist. In einem Ausgabe-WNODE_METHOD_ITEM gibt SizeDataBlock die Größe der Ausgabedaten oder null an, wenn keine Ausgabe vorhanden ist.

VariableData

Enthält zusätzliche Daten, einschließlich des dynamischen instance Namen(falls vorhanden) und der Eingabe für oder Ausgabe der Methode, die an einer 8-Byte-Grenze ausgerichtet ist.

Hinweise

WMI übergibt einen WNODE_METHOD_ITEM mit einer IRP_MN_EXECUTE_METHOD-Anforderung, um eine Methode anzugeben, die in einer instance eines Datenblocks ausgeführt werden soll, sowie alle für die Methode erforderlichen Eingabedaten.

Wenn eine Methode eine Ausgabe generiert, überschreibt ein Treiber die Eingabedaten mit der Ausgabe von DataBlockOffset im Puffer unter IrpStack-Parameters.WMI.Buffer> und legt SizeDataBlock in der WNODE_METHOD_ITEM fest, um die Größe der Ausgabedaten anzugeben.

Anforderungen

Anforderung Wert
Header wmistr.h (einschließlich Wmistr.h)

Weitere Informationen

WNODE_HEADER