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 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áticos 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 do início de um WNODE_METHOD_ITEM de entrada para dados de entrada para o 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_ITEM de entrada ou zero se não houver nenhuma entrada. Em um WNODE_METHOD_ITEM de 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.

Comentários

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 todos os dados de entrada exigidos pelo método .

Se um método gerar saída, um driver substituirá os dados de entrada pela saída em DataBlockOffset no buffer em IrpStack-Parameters.WMI.Buffer> e 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)

Confira também

WNODE_HEADER