Condividi tramite


Funzione PdhReadRawLogRecord (pdh.h)

Legge le informazioni nel file di log di traccia binario specificato.

Sintassi

PDH_FUNCTION PdhReadRawLogRecord(
  [in]  PDH_HLOG            hLog,
  [in]  FILETIME            ftRecord,
  [out] PPDH_RAW_LOG_RECORD pRawLogRecord,
  [in]  LPDWORD             pdwBufferLength
);

Parametri

[in] hLog

Gestire il file di log. La funzione PdhOpenLog o PdhBindInputDataSource restituisce questo handle.

[in] ftRecord

Timestamp del record da leggere. Se il timestamp non corrisponde a un record nel file di log, la funzione restituisce il record che ha un timestamp più vicino a (ma non maggiore di) il timestamp specificato.

[out] pRawLogRecord

Buffer allocato dal chiamante che riceve una struttura PDH_RAW_LOG_RECORD ; la struttura contiene le informazioni sul record di file di log. Impostare su NULL se pdwBufferLength è zero.

[in] pdwBufferLength

Dimensioni del buffer pRawLogRecord , in TCHARs. Se zero in input, la funzione restituisce PDH_MORE_DATA e imposta questo parametro sulla dimensione del buffer richiesta. Se il buffer è maggiore delle dimensioni necessarie, la funzione imposta questo parametro sulla dimensione effettiva del buffer usato. Se la dimensione specificata per l'input è maggiore di zero ma minore delle dimensioni necessarie, non è consigliabile basarsi sulle dimensioni restituite per riallocare il buffer.

Valore restituito

Se la funzione ha esito positivo, restituisce ERROR_SUCCESS.

Se la funzione ha esito negativo, il valore restituito è un codice di errore di sistema o un codice di errore PDH. Di seguito sono riportati i valori possibili.

Codice restituito Descrizione
PDH_INVALID_ARGUMENT
Un parametro non è valido. Ad esempio, in alcune versioni è possibile ricevere questo errore se le dimensioni specificate per l'input sono maggiori di zero ma meno delle dimensioni necessarie.
PDH_MORE_DATA
Il buffer pRawLogRecord è troppo piccolo per contenere gli elementi del percorso. Questo valore restituito è previsto se pdwBufferLength è zero in input. Se la dimensione specificata per l'input è maggiore di zero ma minore delle dimensioni necessarie, non è consigliabile basarsi sulle dimensioni restituite per riallocare il buffer.
PDH_MEMORY_ALLOCATION_FAILURE
Impossibile allocare memoria per completare la funzione.

Commenti

È consigliabile chiamare questa funzione due volte, la prima volta per ottenere le dimensioni del buffer necessarie (impostare pRawLogRecord su NULL e pdwBufferLength su 0) e la seconda volta per ottenere i dati.

Requisiti

Requisito Valore
Client minimo supportato Windows XP [solo app desktop]
Server minimo supportato Windows Server 2003 [solo app desktop]
Piattaforma di destinazione Windows
Intestazione pdh.h
Libreria Pdh.lib
DLL Pdh.dll

Vedi anche

PDH_RAW_LOG_RECORD

PdhCollectQueryData

PdhFormatFromRawValue