estructura WNODE_METHOD_ITEM (wmistr.h)

La estructura WNODE_METHOD_ITEM indica un método asociado a una instancia de un bloque de datos y contiene los datos de entrada del método .

Sintaxis

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;

Miembros

WnodeHeader

Es una estructura de WNODE_HEADER que contiene información común a todas las estructuras WNODE_XXX , como el tamaño del búfer, el GUID que representa un bloque de datos asociado a una solicitud y marcas que proporcionan información sobre los datos WNODE_XXX que se pasan o devuelven.

OffsetInstanceName

Indica el desplazamiento en bytes desde el principio de esta estructura hasta el nombre de instancia dinámica de esta instancia, alineado en un límite de USHORT. Este miembro solo es válido si WNODE_FLAG_STATIC_INSTANCE_NAMES está claro en WnodeHeader.Flags. Si el bloque de datos se registró con nombres de instancia estáticos, WMI omite OffsetInstanceName.

InstanceIndex

Indica el índice de esta instancia en la lista de nombres de instancia estáticos del controlador para este bloque de datos. Este miembro solo es válido si el bloque de datos se registró con nombres de instancia estáticos y WNODE_FLAG_STATIC_INSTANCE_NAMES se establece en WnodeHeader.Flags. Si el bloque de datos se registró con nombres de instancia dinámicos, WMI omite InstanceIndex.

MethodId

Especifica el identificador del método que se va a ejecutar.

DataBlockOffset

Indica el desplazamiento desde el principio de un WNODE_METHOD_ITEM de entrada para los datos de entrada para el método o el desplazamiento desde el principio de un WNODE_METHOD_ITEM de salida para generar datos del método.

SizeDataBlock

Indica el tamaño de los datos de entrada en un WNODE_METHOD_ITEM de entrada o cero si no hay ninguna entrada. En un WNODE_METHOD_ITEM de salida, SizeDataBlock indica el tamaño de los datos de salida o cero si no hay ninguna salida.

VariableData

Contiene datos adicionales, incluido el nombre de instancia dinámico, si existe, y la entrada de o salida del método alineado en un límite de 8 bytes.

Comentarios

WMI pasa un WNODE_METHOD_ITEM con una solicitud de IRP_MN_EXECUTE_METHOD para especificar un método que se va a ejecutar en una instancia de un bloque de datos, además de los datos de entrada requeridos por el método.

Si un método genera una salida, un controlador sobrescribe los datos de entrada con la salida en DataBlockOffset en el búfer en IrpStack-Parameters.WMI.Buffer> y establece SizeDataBlock en el WNODE_METHOD_ITEM para especificar el tamaño de los datos de salida.

Requisitos

Requisito Valor
Header wmistr.h (incluya Wmistr.h)

Consulte también

WNODE_HEADER