Condividi tramite


Funzione TdhGetPropertySize (tdh.h)

Recupera le dimensioni di uno o più valori di proprietà nei dati dell'evento.

Sintassi

TDHSTATUS TdhGetPropertySize(
  [in]  PEVENT_RECORD             pEvent,
  [in]  ULONG                     TdhContextCount,
  [in]  PTDH_CONTEXT              pTdhContext,
  [in]  ULONG                     PropertyDataCount,
  [in]  PPROPERTY_DATA_DESCRIPTOR pPropertyData,
  [out] ULONG                     *pPropertySize
);

Parametri

[in] pEvent

Record di evento passato al callback EventRecordCallback . Per informazioni dettagliate, vedere la struttura EVENT_RECORD .

[in] TdhContextCount

Numero di elementi in pTdhContext.

[in] pTdhContext

Matrice di valori di contesto solo per eventi WPP o ETW classici, in caso contrario, NULL. Per informazioni dettagliate, vedere la struttura TDH_CONTEXT . La matrice non deve contenere tipi di contesto duplicati.

[in] PropertyDataCount

Numero di strutture descrittori dati in pPropertyData.

[in] pPropertyData

Matrice di strutture PROPERTY_DATA_DESCRIPTOR che definiscono la proprietà le cui dimensioni si desidera recuperare.

È possibile passare questa stessa matrice alla funzione TdhGetProperty per recuperare i dati della proprietà.

Se si recuperano le dimensioni di una proprietà non membro di una struttura, è possibile specificare un singolo descrittore dati. Se si recuperano le dimensioni di una proprietà membro di una struttura, specificare una matrice di due descrittori dati (le strutture non possono contenere o fare riferimento ad altre strutture). Per altre informazioni sulla specifica di questo parametro, vedere il codice di esempio seguente.

[out] pPropertySize

Dimensioni della proprietà, in byte. Usare questo valore per allocare il buffer passato nel parametro pBuffer della funzione TdhGetProperty .

Valore restituito

Restituisce ERROR_SUCCESS se riuscito. In caso contrario, questa funzione restituisce uno dei codici restituiti seguenti oltre ad altri.

Codice restituito Descrizione
ERROR_NOT_FOUND
Lo schema per l'evento non è stato trovato o la mappa specificata non è stata trovata.

Se è stata usata una classe MOF per definire l'evento, TDH cerca lo schema nel repository WMI. Se è stato usato un manifesto per definire l'evento, TDH cerca nelle risorse del provider. Se si usa un manifesto, l'attributo resourceFileName dell'elemento provider definisce la posizione in cui TDH prevede di trovare le risorse.

ERROR_INVALID_PARAMETER
Uno o più parametri non sono validi.
ERROR_FILE_NOT_FOUND
L'attributo resourceFileName nel manifesto contiene il percorso del file binario del provider. Quando si registra il manifesto, il percorso viene scritto nel Registro di sistema. TDH non è riuscito a trovare il file binario in base alla posizione registrata.
ERROR_WMI_SERVER_UNAVAILABLE
Il servizio WMI non è disponibile.

Commenti

Se l'evento è un evento WPP o ETW classico, è possibile specificare le informazioni di contesto usate per analizzare le informazioni sull'evento. L'evento è un evento WPP se il flag di EVENT_HEADER_FLAG_TRACE_MESSAGE è impostato nel membro Flags di EVENT_HEADER (vedere il membro EventHeader di EVENT_RECORD). L'evento è un evento ETW legacy se il flag di EVENT_HEADER_FLAG_CLASSIC_HEADER è impostato.

Esempio

Per un esempio che illustra come chiamare questa funzione, vedere Uso di TdhGetProperty per l'utilizzo dei dati degli eventi.

Requisiti

Requisito Valore
Client minimo supportato Windows Vista [solo app desktop]
Server minimo supportato Windows Server 2008 [solo app desktop]
Piattaforma di destinazione Windows
Intestazione tdh.h
Libreria Tdh.lib
DLL Tdh.dll

Vedi anche

TdhGetProperty