Controllo dei codici di stato dei dati dei contatori
Il valore restituito delle funzioni PDH indica l'esito positivo o negativo della chiamata di funzione, che è diverso dallo stato dei dati del contatore. Controllare sempre il membro CStatus di un valore del contatore restituito nelle strutture PDH per assicurarsi che i dati restituiti siano validi prima di utilizzarli. Se il valore del membro CStatus non indica l'esito positivo, non usare i dati. Di seguito sono riportati i valori di stato possibili per i contatori:
Valore | Significato |
---|---|
PDH_CSTATUS_NO_MACHINE | PDH non è riuscito a connettersi al computer specificato nel percorso del contatore. Se questo stato viene restituito quando il contatore viene aggiunto, il contatore non viene completamente inizializzato. Ogni volta che la query viene aggiornata, PDH prova nuovamente a stabilire la connessione. Quando viene stabilita la connessione, viene ripresa la normale raccolta dati. |
PDH_CSTATUS_NO_OBJECT | Il computer specificato è stato trovato, ma l'oggetto prestazioni specificato è stato trovato nel computer. Se questo stato viene restituito quando viene aggiunto il contatore, il contatore specificato non viene incluso nella query. Se questo stato viene restituito da un contatore attivo, i dati per tale contatore non sono validi. Ogni volta che vengono richiesti i dati, PDH tenta di ottenere questi dati del contatore. |
PDH_CSTATUS_NO_INSTANCE | L'istanza specificata non è stata trovata nell'oggetto . Se questo stato viene restituito durante l'aggiunta del contatore alla query, il contatore viene aggiunto correttamente alla query, ma non sono disponibili dati finché non viene visualizzata l'istanza specifica e viene restituito uno stato di esito positivo. |
PDH_CSTATUS_NO_COUNTER | Il contatore specificato non è stato trovato nell'oggetto specificato. Se questo stato viene restituito quando il contatore viene aggiunto, il contatore non viene aggiunto alla query. Se questo stato viene restituito dopo la raccolta dei dati, i dati per tale contatore non sono validi. Ogni volta che vengono richiesti i dati, PDH tenta di ottenere questi dati del contatore. |
PDH_CSTATUS_INVALID_DATA | Il contatore è stato trovato correttamente, ma i dati restituiti non sono validi. Questo errore può verificarsi se il valore del contatore è minore del valore precedente. Poiché i valori dei contatori aumentano sempre, il valore del contatore passa a zero quando raggiunge il valore massimo. Un'altra possibile causa è un timer di sistema che non è corretto. |
PDH_CSTATUS_DATI_VALIDI | I dati per il contatore sono stati restituiti correttamente, ma non sono stati modificati dall'ultima lettura del contatore. |
PDH_CSTATUS_NEW_DATA | I dati per il contatore sono stati restituiti correttamente ed è diverso dall'ultima lettura del contatore. PDH_CSTATUS_NEW_DATA può essere restituito su un contatore della frequenza anche se la velocità risultante è uguale all'ultimo campione. Ciò è dovuto al fatto che il valore di dati non elaborato utilizzato nella determinazione di questo valore di stato è stato modificato, non la velocità calcolata. |
PDH_MORE_DATA | Il buffer fornito non era sufficientemente grande da archiviare tutti i dati del contatore. Allocare un buffer più grande ed eseguire di nuovo la funzione. |
PDH_CSTATUS_ITEM_NOT_VALIDATED | Il contatore è stato aggiunto alla query, ma non è stato convalidato né utilizzato. Non sono disponibili informazioni aggiuntive sullo stato di questo contatore. |
PDH_CSTATUS_NO_COUNTERNAME | Nella query non è stato specificato alcun nome di contatore. |
PDH_CSTATUS_NO_COUNTER | Impossibile trovare il nome del contatore specificato. |
PDH_CSTATUS_NO_OBJECT (Stato PDH: Nessun Oggetto) | Impossibile trovare l'oggetto prestazioni specificato. |
PDH_CALC_NEGATIVE_DENOMINATOR | Un contatore ha un valore denominatore negativo. |
PDH_CALC_NEGATIVE_TIMEBASE | Un contatore ha un valore timebase negativo. |
Valore negativo calcolato (PDH) | Un contatore ha un valore negativo. |
PDH_CSTATUS_NO_COUNTERNAME | Non è stato specificato alcun percorso del contatore. |
PDH_CSTATUS_BAD_COUNTERNAME | Il formato del percorso del contatore non è corretto. |