Compartir a través de


Función WmiQueryTraceInformation (wdm.h)

La rutina WmiQueryTraceInformation devuelve información sobre un seguimiento de eventos WMI de .

Sintaxis

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 un enumerador de TRACE_INFORMATION_CLASS que indica el tipo de información que se va a devolver sobre un seguimiento de eventos.

[out] TraceInformation

Puntero a un búfer de salida asignado por el autor de la llamada donde la rutina devuelve la información de seguimiento de eventos especificada por TraceInformationClass.

[in] TraceInformationLength

Especifica el tamaño, en bytes, del búfer de TraceInformation.

[out, optional] RequiredLength

Puntero al valor devuelto por la rutina que especifica el tamaño necesario, en bytes, del búfer de TraceInformation. El autor de la llamada debe establecer RequiredLength en NULL si no usa la información de longitud necesaria.

[in, optional] Buffer

Puntero a la información de entrada específica de la consulta que proporciona un autor de llamada. Si no se requiere información proporcionada por el autor de la llamada, el autor de la llamada debe establecer buffer en NULL.

Valor devuelto

Código devuelto Descripción
STATUS_SUCCESS
Éxito
STATUS_INFO_LENGTH_MISMATCH
El tamaño del búfer de TraceInformation no es igual al tamaño necesario para la información de seguimiento de eventos especificada.
STATUS_INVALID_HANDLE
El identificador de seguimiento especificado por el miembro HistoricalContext delBúfer (PWNODE_HEADER) no es válido.
STATUS_INVALID_INFO_CLASS
El tipo especificado de información de seguimiento de eventos no es válido.
STATUS_INVALID_PARAMETER
El nombre del seguimiento de eventos, proporcionado con una consulta para devolver un identificador de seguimiento dado su nombre, no es válido.
STATUS_INVALID_PARAMETER_MIX
El autor de la llamada no ha proporcionado la información necesaria para la información de seguimiento de eventos especificada.
STATUS_MORE_ENTRIES
El búfer traceInformation no es lo suficientemente grande como para contener una matriz de todos los identificadores de seguimiento de eventos válidos.
STATUS_NOT_FOUND
No se encontró un registrador global.

Observaciones

Para cada tipo de información de seguimiento de eventos especificada por TraceInformationClass, se proporciona la tabla siguiente:

  • Requisitos de entrada
  • Información que WmiQueryTraceInformation devuelve en el búfer de TraceInformation
Valor de TraceClassInformation Requisitos de entrada Información devuelta
TraceIdClass TraceInformationLength es igual al valor de sizeof(ULONG).

El tamaño, en bytes del búfer traceInformation es mayor o igual que el valor de sizeof(ULONG).

El miembro HistoricalContext de PWNODE_HEADERBuffer especifica un identificador de seguimiento de eventos.

*(PULONG) TraceInformation se establece en el identificador del registrador del identificador del seguimiento de eventos.
TraceHandleClass TraceInformationLength es igual al valor de sizeof(TRACEHANDLE).

El tamaño, en bytes del búfer de TraceInformation debe ser mayor o igual que el valor de sizeof(TRACEHANDLE).

*(PULONG)Búfer se establece en un identificador de registrador.

*(PTRACEHANDLE)traceInformation se establece en un identificador de seguimiento de eventos para el registrador especificado. Si el identificador de registrador especificado es cero, se devuelve un identificador de seguimiento de eventos para el registrador de kernel.
TraceEnableFlagsClass TraceInformationLength es mayor o igual que el valor de sizeof(ULONG).

El tamaño, en bytes del búfer traceInformation debe ser mayor o igual que el valor de sizeof(ULONG).

El miembro HistoricalContext de PWNODE_HEADERBuffer especifica un identificador de seguimiento de eventos.

*(PULONG) TraceInformation se establece en las marcas de habilitación establecidas para el identificador de seguimiento de eventos especificado.
TraceEnableLevelClass TraceInformationLength se establece mayor o igual que el valor de sizeof(ULONG).

El tamaño, en bytes del búfer traceInformation debe ser mayor o igual que el valor de sizeof(ULONG).

El miembro HistoricalContext de PWNODE_HEADERBuffer especifica un identificador de seguimiento de eventos.

*(PULONG)traceInformation se establece en el nivel del identificador de seguimiento de eventos especificado.
GlobalLoggerHandleClass TraceInformationLength es igual al valor de sizeof(TRACEHANDLE).

El tamaño, en bytes del búfer de TraceInformation debe ser mayor o igual que el valor de sizeof(TRACEHANDLE).

*(PTRACEHANDLE)traceInformation se establece en un identificador de seguimiento de eventos para el registrador global.
EventLoggerHandleClass Solo para uso interno. Solo para uso interno.
AllLoggerHandlesClass TraceInformationLength se establece en el tamaño, bytes, de una matriz de m valores TRACEHANDLE.

El tamaño, en bytes del búfer TraceInformation debe ser mayor o igual que el valor de (m*sizeof(TRACEHANDLE)).

El búfer de TraceInformation de contiene una matriz de identificadores de seguimiento de n, donde n es el mínimo de m, el número de identificadores de seguimiento de eventos proporcionados por el autor de la llamada y el número de controladores de seguimiento de eventos válidos. La rutina devuelve un estado de STATUS_MORE_ENTRIES si el búfer traceInformation es demasiado pequeño para contener todos los identificadores de seguimiento.
TraceHandleByNameClass TraceInformationLength se establece en el valor de sizeof(TRACEHANDLE).

El tamaño, en bytes, del búfer TraceInformation debe ser mayor o igual que el valor de sizeof(TRACEHANDLE).

(PUNICODE_STRING)buffer especifica un nombre de seguimiento descriptivo en formato Unicode.

*(PTRACEHANDLE)traceInformation se establece en el identificador de seguimiento de eventos asociado al nombre descriptivo especificado.
 

Si el autor de la llamada proporciona un punterorequiredLengthNULL, WmiQueryTraceInformation también devuelve la longitud necesaria para la información de seguimiento de eventos especificada.

WmiQueryTraceInformation se ejecuta en irQL del autor de la llamada.

Requisitos

Requisito Valor
cliente mínimo admitido Disponible en Windows XP y versiones posteriores de Windows.
de la plataforma de destino de Universal
encabezado de wdm.h (include Wdm.h, Ntddk.h, Ntifs.h)
biblioteca de NtosKrnl.lib
DLL de NtosKrnl.exe
irQL Consulte la sección Comentarios.

Consulte también

IoWmiWriteEvent

TRACE_INFORMATION_CLASS

WmiFireEvent

WmiTraceMessage de

WmiTraceMessageVa de