Condividi tramite


Funzione PdhGetRawCounterArrayA (pdh.h)

Restituisce una matrice di valori non elaborati dal contatore specificato. Utilizzare questa funzione quando si desidera recuperare i valori del contatore non elaborato di un contatore che contiene un carattere jolly per il nome dell'istanza.

Sintassi

PDH_FUNCTION PdhGetRawCounterArrayA(
  [in]      PDH_HCOUNTER            hCounter,
  [in, out] LPDWORD                 lpdwBufferSize,
  [out]     LPDWORD                 lpdwItemCount,
  [out]     PPDH_RAW_COUNTER_ITEM_A ItemBuffer
);

Parametri

[in] hCounter

Handle del contatore per i cui valori di istanza non elaborata correnti si desidera recuperare. La funzione pdhAddCounter restituisce questo handle.

[in, out] lpdwBufferSize

Dimensioni in byte del buffer ItemBuffer . Se zero in ingresso, 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 sulle dimensioni effettive del buffer utilizzato. Se la dimensione specificata per l'input è maggiore di zero ma minore della dimensione richiesta, non è consigliabile basarsi sulle dimensioni restituite per riallocare il buffer.

[out] lpdwItemCount

Numero di valori dei contatori non elaborati nel buffer ItemBuffer .

[out] ItemBuffer

Buffer allocato dal chiamante che riceve la matrice di strutture PDH_RAW_COUNTER_ITEM; le strutture contengono i valori del contatore dell'istanza non elaborata. Impostare su NULL se lpdwBufferSize è zero.

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_MORE_DATA
Il buffer ItemBuffer non è sufficientemente grande da contenere il nome dell'oggetto. Questo valore restituito è previsto se lpdwBufferSize è zero all'input. Se la dimensione specificata per l'input è maggiore di zero ma minore della dimensione richiesta, non è consigliabile basarsi sulle dimensioni restituite per riallocare il buffer.
PDH_INVALID_ARGUMENT
Un parametro non è valido o non è formattato correttamente. Ad esempio, in alcune versioni è possibile ricevere questo errore se la dimensione specificata per l'input è maggiore di zero, ma minore della dimensione richiesta.
PDH_INVALID_HANDLE
L'handle del contatore non è valido.

Osservazioni

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

I dati per il contatore vengono bloccati per la durata della chiamata a PdhGetRawCounterArray per impedire modifiche durante l'elaborazione della chiamata.

Nota

L'intestazione pdh.h definisce PdhGetRawCounterArray come alias che seleziona automaticamente la versione ANSI o Unicode di questa funzione in base alla definizione della costante del preprocessore UNICODE. La combinazione dell'utilizzo dell'alias indipendente dalla codifica con il codice non indipendente dalla codifica può causare mancate corrispondenze che generano errori di compilazione o di runtime. Per altre informazioni, vedere convenzioni di per i prototipi di funzioni.

Fabbisogno

Requisito Valore
client minimo supportato Windows XP [solo app desktop]
server minimo supportato Windows Server 2003 [solo app desktop]
piattaforma di destinazione Finestre
intestazione pdh.h
libreria Pdh.lib
dll Pdh.dll

Vedere anche

PDH_RAW_COUNTER_ITEM

PdhCalculateCounterFromRawValue

PdhGetFormattedCounterArray

PdhGetFormattedCounterValue