WNODE_METHOD_ITEM Struktur (wmistr.h)
Die WNODE_METHOD_ITEM Struktur gibt eine Methode an, die einer Instanz eines Datenblocks zugeordnet ist und alle Eingabedaten für die Methode enthält.
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;
Angehörige
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 einem Anforderung zugeordneten Datenblock darstellt, und Flags, die Informationen zu den WNODE_XXX- übergebenen oder zurückgegebenen Daten bereitstellen.
OffsetInstanceName
Gibt den Offset in Bytes vom Anfang dieser Struktur bis zum Namen der dynamischen Instanz dieser Instanz an, die an einer USHORT-Grenze ausgerichtet ist. Dieses Element ist nur gültig, wenn WNODE_FLAG_STATIC_INSTANCE_NAMES in WnodeHeader.Flagsklar ist. Wenn der Datenblock mit namen statischer Instanz registriert wurde, ignoriert WMI OffsetInstanceName.
InstanceIndex
Gibt den Index dieser Instanz in der Liste der statischen Instanznamen für diesen Datenblock an. Dieses Element ist nur gültig, wenn der Datenblock mit namen statischer Instanz registriert wurde und WNODE_FLAG_STATIC_INSTANCE_NAMES in WnodeHeader.Flagsfestgelegt ist. Wenn der Datenblock mit namen der dynamischen Instanz registriert wurde, ignoriert WMI InstanceIndex-.
MethodId
Gibt die ID der auszuführenden Methode an.
DataBlockOffset
Gibt den Offset vom Anfang einer Eingabe WNODE_METHOD_ITEM bis hin zu Eingabedaten für die Methode oder den Offset vom Anfang einer Ausgabe WNODE_METHOD_ITEM auf Ausgabedaten aus der Methode an.
SizeDataBlock
Gibt die Größe der Eingabedaten in einer Eingabe WNODE_METHOD_ITEModer null an, wenn keine Eingabe vorhanden ist. In einer Ausgabe WNODE_METHOD_ITEMgibt SizeDataBlock-die Größe der Ausgabedaten an oder null, wenn keine Ausgabe vorhanden ist.
VariableData
Enthält zusätzliche Daten, einschließlich des namens der dynamischen Instanz, falls vorhanden, und die Eingabe für oder Ausgabe der Methode, die an einer Grenze von 8 Byte ausgerichtet ist.
Bemerkungen
WMI übergibt eine WNODE_METHOD_ITEM mit einer IRP_MN_EXECUTE_METHOD Anforderung, um eine Methode anzugeben, die in einer Instanz eines Datenblocks ausgeführt werden soll, sowie alle eingabedaten, die von der Methode benötigt werden.
Wenn eine Methode ausgabe generiert, überschreibt ein Treiber die Eingabedaten mit der Ausgabe bei DataBlockOffset im Puffer bei IrpStack->Parameters.WMI.Bufferund legt SizeDataBlock- im WNODE_METHOD_ITEM fest, um die Größe der Ausgabedaten anzugeben.
Anforderungen
Anforderung | Wert |
---|---|
Header- | wmistr.h (include Wmistr.h) |