Funzione WmiQueryTraceInformation (wdm.h)

La routine WmiQueryTraceInformation restituisce informazioni su una traccia eventi WMI .

Sintassi

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

Parametri

[in] TraceInformationClass

Specifica un enumeratore TRACE_INFORMATION_CLASS che indica il tipo di informazioni da restituire su una traccia evento.

[out] TraceInformation

Puntatore a un buffer di output allocato dal chiamante in cui la routine restituisce le informazioni di traccia dell'evento specificate da TraceInformationClass.

[in] TraceInformationLength

Specifica le dimensioni, in byte, del buffer TraceInformation .

[out, optional] RequiredLength

Puntatore al valore restituito dalla routine che specifica le dimensioni richieste, in byte, del buffer TraceInformation . Il chiamante deve impostare RequiredLength su null se non utilizza le informazioni di lunghezza necessarie.

[in, optional] Buffer

Puntatore alle informazioni di input specifiche della query fornite da un chiamante. Se le informazioni fornite dal chiamante non sono necessarie, il chiamante deve impostare Buffer su NULL.

Valore restituito

Codice restituito Descrizione
STATUS_SUCCESS
Successo
STATUS_INFO_LENGTH_MISMATCH
Le dimensioni del buffer TraceInformation non sono uguali alle dimensioni necessarie per le informazioni di traccia evento specificate.
STATUS_INVALID_HANDLE
L'handle PWNODE_HEADER di traccia specificato dal membro HistoricalContext delBuffernon è valido.
STATUS_INVALID_INFO_CLASS
Il tipo specificato di informazioni di traccia evento non è valido.
STATUS_INVALID_PARAMETER
Il nome della traccia dell'evento, fornito con una query per restituire un handle di traccia in base al nome, non è valido.
STATUS_INVALID_PARAMETER_MIX
Il chiamante non ha fornito le informazioni necessarie per le informazioni di traccia evento specificate.
STATUS_MORE_ENTRIES
Il buffer TraceInformation non è sufficientemente grande da contenere una matrice di tutti gli handle di traccia eventi validi.
STATUS_NOT_FOUND
Non è stato trovato un logger globale.

Osservazioni

Per ogni tipo di informazioni di traccia evento specificate da TraceInformationClass, la tabella seguente fornisce:

  • Requisiti di input
  • Le informazioni restituite WmiQueryTraceInformation nel buffer TraceInformation
Valore di TraceClassInformation Requisiti di input Informazioni restituite
TraceIdClass TraceInformationLength è uguale al valore di sizeof(ULONG).

Le dimensioni, in byte del buffer TraceInformation sono maggiori o uguali al valore di sizeof(ULONG).

L'membro HistoricalContext di (PWNODE_HEADER)Buffer specifica un handle di traccia eventi.

*(PULONG)TraceInformation è impostato sull'ID logger dell'handle di traccia eventi.
TraceHandleClass TraceInformationLength è uguale al valore di sizeof(TRACEHANDLE).

Le dimensioni, in byte del buffer TraceInformation devono essere maggiori o uguali al valore di sizeof(TRACEHANDLE).

*(PULONG)buffer è impostato su un ID logger.

*(PTRACEHANDLE)TraceInformation è impostato su un handle di traccia eventi per il logger specificato. Se l'ID del logger specificato è zero, viene restituito un handle di traccia eventi per il logger del kernel.
TraceEnableFlagsClass TraceInformationLength è maggiore o uguale al valore di sizeof(ULONG).

Le dimensioni, in byte del buffer TraceInformation devono essere maggiori o uguali al valore di sizeof(ULONG).

L'membro HistoricalContext di (PWNODE_HEADER)Buffer specifica un handle di traccia eventi.

*(PULONG)TraceInformation è impostato sui flag di abilitazione impostati per l'handle di traccia eventi specificato.
TraceEnableLevelClass TraceInformationLength è impostato su un valore maggiore o uguale al valore di sizeof(ULONG).

Le dimensioni, in byte del buffer TraceInformation devono essere maggiori o uguali al valore di sizeof(ULONG).

L'membro HistoricalContext di (PWNODE_HEADER)Buffer specifica un handle di traccia eventi.

*(PULONG)TraceInformation è impostato sul livello per l'handle di traccia eventi specificato.
GlobalLoggerHandleClass TraceInformationLength è uguale al valore di sizeof(TRACEHANDLE).

Le dimensioni, in byte del buffer TraceInformation devono essere maggiori o uguali al valore di sizeof(TRACEHANDLE).

*(PTRACEHANDLE)TraceInformation è impostato su un handle di traccia eventi per il logger globale.
EventLoggerHandleClass Solo per uso interno. Solo per uso interno.
AllLoggerHandlesClass TraceInformationLength è impostato sulle dimensioni, i byte di una matrice di valori m TRACEHANDLE.

Le dimensioni, in byte del buffer TraceInformation devono essere maggiori o uguali al valore di (msizeof(TRACEHANDLE)).

Il buffer TraceInformation contiene una matrice di handle di traccia n, dove n è il minimo di m, il numero di handle di traccia eventi forniti dal chiamante e il numero di handle di traccia eventi validi. La routine restituisce uno stato di STATUS_MORE_ENTRIES se il buffer TraceInformation è troppo piccolo per contenere tutti gli handle di traccia.
TraceHandleByNameClass TraceInformationLength è impostato sul valore di sizeof(TRACEHANDLE).

Le dimensioni, in byte, del buffer TraceInformation devono essere maggiori o uguali al valore di sizeof(TRACEHANDLE).

(PUNICODE_STRING)Buffer specifica un nome descrittivo di traccia in formato Unicode.

*(PTRACEHANDLE)TraceInformation è impostato sull'handle di traccia eventi associato al nome descrittivo specificato.
 

Se il chiamante fornisce un puntatoreNULLRequiredLength, WmiQueryTraceInformation restituisce anche la lunghezza necessaria per le informazioni di traccia evento specificate.

wmiQueryTraceInformation viene eseguito nel runtime di integrazione del chiamante.

Fabbisogno

Requisito Valore
client minimo supportato Disponibile in Windows XP e versioni successive di Windows.
piattaforma di destinazione Universale
intestazione wdm.h (include Wdm.h, Ntddk.h, Ntifs.h)
libreria NtosKrnl.lib
dll NtosKrnl.exe
IRQL Vedere la sezione Osservazioni.

Vedere anche

IoWmiWriteEvent

TRACE_INFORMATION_CLASS

WmiFireEvent

wmiTraceMessage

WmiTraceMessageVa