Função WmiQueryTraceInformation (wdm.h)

A rotina WmiQueryTraceInformation retorna informações sobre um rastreamento de eventos WMI.

Sintaxe

NTSTATUS WmiQueryTraceInformation(
  [in]            TRACE_INFORMATION_CLASS TraceInformationClass,
  [out]           PVOID                   TraceInformation,
  [in]            ULONG                   TraceInformationLength,
  [out, optional] PULONG                  RequiredLength,
  [in, optional]  PVOID                   Buffer
);

Parâmetros

[in] TraceInformationClass

Especifica um enumerador TRACE_INFORMATION_CLASS que indica o tipo de informação a ser retornado sobre um rastreamento de evento.

[out] TraceInformation

Um ponteiro para um buffer de saída alocado pelo chamador em que a rotina retorna as informações de rastreamento de evento especificadas por TraceInformationClass.

[in] TraceInformationLength

Especifica o tamanho, em bytes, do buffer TraceInformation .

[out, optional] RequiredLength

Um ponteiro para o valor retornado pela rotina que especifica o tamanho necessário, em bytes, do buffer TraceInformation . O chamador deverá definir RequiredLength como NULL se ele não usar as informações de comprimento necessárias.

[in, optional] Buffer

Um ponteiro para as informações de entrada específicas da consulta fornecidas por um chamador. Se as informações fornecidas pelo chamador não forem necessárias, o chamador deverá definir Buffer como NULL.

Retornar valor

Código de retorno Descrição
STATUS_SUCCESS
Êxito
STATUS_INFO_LENGTH_MISMATCH
O tamanho do buffer TraceInformation não é igual ao tamanho necessário para as informações de rastreamento de evento especificadas.
STATUS_INVALID_HANDLE
O identificador de rastreamento especificado pelo membro HistoricContext do (PWNODE_HEADER)Buffer não é válido.
STATUS_INVALID_INFO_CLASS
O tipo especificado de informações de rastreamento de evento não é válido.
STATUS_INVALID_PARAMETER
O nome do rastreamento de evento, fornecido com uma consulta para retornar um identificador de rastreamento dado seu nome, não é válido.
STATUS_INVALID_PARAMETER_MIX
O chamador não forneceu as informações necessárias para as informações de rastreamento de evento especificadas.
STATUS_MORE_ENTRIES
O buffer TraceInformation não é grande o suficiente para manter uma matriz de todos os identificadores de rastreamento de evento válidos.
STATUS_NOT_FOUND
Um agente global não foi encontrado.

Comentários

Para cada tipo de informação de rastreamento de evento especificada por TraceInformationClass, a tabela a seguir fornece:

  • Requisitos de entrada
  • Informações que WmiQueryTraceInformation retorna no buffer TraceInformation
Valor de TraceClassInformation Requisitos de entrada Informações retornadas
TraceIdClass TraceInformationLength é igual ao valor de sizeof(ULONG).

O tamanho, em bytes do buffer TraceInformation , é maior ou igual ao valor de sizeof(ULONG).

O membro HistoricContext de (PWNODE_HEADER)Buffer especifica um identificador de rastreamento de evento.

*(PULONG)TraceInformation é definido como a ID do agente do identificador de rastreamento de evento.
TraceHandleClass TraceInformationLength é igual ao valor de sizeof(TRACEHANDLE).

O tamanho, em bytes do buffer TraceInformation , deve ser maior ou igual ao valor de sizeof(TRACEHANDLE).

*(PULONG)O buffer é definido como uma ID do agente.

*(PTRACEHANDLE)TraceInformation é definido como um identificador de rastreamento de evento para o agente especificado. Se a ID do agente especificada for zero, um identificador de rastreamento de evento para o agente do kernel será retornado.
TraceEnableFlagsClass TraceInformationLength é maior ou igual ao valor de sizeof(ULONG).

O tamanho, em bytes do buffer TraceInformation , deve ser maior ou igual ao valor de sizeof(ULONG).

O membro HistoricContext de (PWNODE_HEADER)Buffer especifica um identificador de rastreamento de evento.

*(PULONG)TraceInformation é definido como os sinalizadores de habilitação definidos para o identificador de rastreamento de evento especificado.
TraceEnableLevelClass TraceInformationLength é definido como maior ou igual ao valor de sizeof(ULONG).

O tamanho, em bytes do buffer TraceInformation , deve ser maior ou igual ao valor de sizeof(ULONG).

O membro HistoricContext de (PWNODE_HEADER)Buffer especifica um identificador de rastreamento de evento.

*(PULONG)TraceInformation é definido como o nível do identificador de rastreamento de evento especificado.
GlobalLoggerHandleClass TraceInformationLength é igual ao valor de sizeof(TRACEHANDLE).

O tamanho, em bytes do buffer TraceInformation , deve ser maior ou igual ao valor de sizeof(TRACEHANDLE).

*(PTRACEHANDLE)TraceInformation é definido como um identificador de rastreamento de eventos para o agente global.
EventLoggerHandleClass Somente para uso interno. Somente para uso interno.
AllLoggerHandlesClass TraceInformationLength é definido como o tamanho, bytes, de uma matriz de valores m TRACEHANDLE.

O tamanho, em bytes do buffer TraceInformation , deve ser maior ou igual ao valor de (m*sizeof(TRACEHANDLE)).

O buffer TraceInformation contém uma matriz de n identificadores de rastreamento, em que n é o mínimo de m, o número de identificadores de rastreamento de evento fornecidos pelo chamador e o número de identificadores de rastreamento de eventos válidos. A rotina retornará uma status de STATUS_MORE_ENTRIES se o buffer TraceInformation for muito pequeno para manter todos os identificadores de rastreamento.
TraceHandleByNameClass TraceInformationLength é definido como o valor de sizeof(TRACEHANDLE).

O tamanho, em bytes, do buffer TraceInformation deve ser maior ou igual ao valor de sizeof(TRACEHANDLE).

(PUNICODE_STRING) O buffer especifica um nome de rastreamento amigável no formato Unicode.

*(PTRACEHANDLE)TraceInformation é definido como o identificador de rastreamento de evento associado ao nome amigável especificado.
 

Se o chamador fornecer um ponteiro RequiredLength não NULL, WmiQueryTraceInformation também retornará o comprimento necessário para as informações de rastreamento de evento especificadas.

WmiQueryTraceInformation é executado no IRQL do chamador.

Requisitos

Requisito Valor
Cliente mínimo com suporte Disponível no Windows XP e versões posteriores do Windows.
Plataforma de Destino Universal
Cabeçalho wdm.h (include Wdm.h, Ntddk.h, Ntifs.h)
Biblioteca NtosKrnl.lib
DLL NtosKrnl.exe
IRQL Consulte a seção Observações.

Confira também

IoWmiWriteEvent

TRACE_INFORMATION_CLASS

WmiFireEvent

WmiTraceMessage

WmiTraceMessageVa