Compartilhar via


estrutura WNODE_METHOD_ITEM (wmistr.h)

A estrutura WNODE_METHOD_ITEM indica um método associado a uma instância de um bloco de dados e contém quaisquer dados de entrada para o método.

Sintaxe

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;

Membros

WnodeHeader

É uma estrutura WNODE_HEADER que contém informações comuns a todas as estruturas de WNODE_XXX, como o tamanho do buffer, o GUID que representa um bloco de dados associado a uma solicitação e sinalizadores que fornecem informações sobre os dados WNODE_XXX que estão sendo passados ou retornados.

OffsetInstanceName

Indica o deslocamento em bytes desde o início dessa estrutura até o nome da instância dinâmica dessa instância, alinhado em um limite USHORT. Esse membro só será válido se WNODE_FLAG_STATIC_INSTANCE_NAMES estiver claro em WnodeHeader.Flags. Se o bloco de dados tiver sido registrado com nomes de instância estática, o WMI ignorará OffsetInstanceName.

InstanceIndex

Indica o índice dessa instância na lista de nomes de instância estática do driver para esse bloco de dados. Esse membro só será válido se o bloco de dados tiver sido registrado com nomes de instância estática e WNODE_FLAG_STATIC_INSTANCE_NAMES estiver definido em WnodeHeader.Flags. Se o bloco de dados tiver sido registrado com nomes de instância dinâmica, o WMI ignorará InstanceIndex.

MethodId

Especifica a ID do método a ser executado.

DataBlockOffset

Indica o deslocamento desde o início de uma WNODE_METHOD_ITEM de entrada aos dados de entrada do método ou o deslocamento do início de uma saída WNODE_METHOD_ITEM para os dados de saída do método.

SizeDataBlock

Indica o tamanho dos dados de entrada em um WNODE_METHOD_ITEMde entrada ou zero se não houver nenhuma entrada. Em um WNODE_METHOD_ITEMde saída, SizeDataBlock indica o tamanho dos dados de saída ou zero se não houver saída.

VariableData

Contém dados adicionais, incluindo o nome da instância dinâmica, se houver, e a entrada ou saída do método alinhado em um limite de 8 bytes.

Observações

O WMI passa um WNODE_METHOD_ITEM com uma solicitação IRP_MN_EXECUTE_METHOD para especificar um método a ser executado em uma instância de um bloco de dados, além de quaisquer dados de entrada exigidos pelo método.

Se um método gerar saída, um driver substituirá os dados de entrada com a saída em DataBlockOffset no buffer em IrpStack->Parameters.WMI.Buffere definirá SizeDataBlock no WNODE_METHOD_ITEM para especificar o tamanho dos dados de saída.

Requisitos

Requisito Valor
cabeçalho wmistr.h (inclua Wmistr.h)

Consulte também

WNODE_HEADER