Funzione PerfEnumerateCounterSetInstances (perflib.h)
Ottiene i nomi e gli identificatori delle istanze attive di un contatore impostato su
sistema specificato.
Sintassi
ULONG PerfEnumerateCounterSetInstances(
[in, optional] LPCWSTR szMachine,
[in] LPCGUID pCounterSetId,
[out, optional] PPERF_INSTANCE_HEADER pInstances,
DWORD cbInstances,
[out] LPDWORD pcbInstancesActual
);
Parametri
[in, optional] szMachine
Nome del computer per cui ottenere le informazioni sulle istanze attive del set di contatori specificato dal parametro pCounterSet . Se NULL, la funzione recupera informazioni sulle istanze attive del set di contatori specificato per il computer locale.
[in] pCounterSetId
Identificatore del set di contatori del set di contatori per il quale si desidera ottenere le informazioni sulle istanze attive.
[out, optional] pInstances
Puntatore a un buffer sufficiente per ricevere la quantità di dati specificati dal parametro cbInstances . Può essere
NULL se cbInstances è 0.
cbInstances
Dimensione del buffer specificata dal parametro pInstances in byte.
[out] pcbInstancesActual
Dimensioni del buffer effettivamente necessarie per ottenere le informazioni sulle istanze attive. Il significato dipende dal valore che la funzione
Restituisce.
Valore restituito dalla funzione | Significato di pcbInstancesActual |
---|---|
ERROR_SUCCESS | Numero di byte di informazioni sulle istanze attive del set di contatori specificato archiviato nel buffer che pInstances specificato. |
ERROR_NOT_ENOUGH_MEMORY | The dimensioni del buffer necessario per archiviare le informazioni sulle istanze attive del contatore impostate nel computer specificato, in byte. Ingrandire il buffer all'oggetto richiesto dimensioni e chiamare di nuovo la funzione. |
Altro | Il valore non è definito e non deve essere usato. |
Valore restituito
Codice restituito | Descrizione |
---|---|
|
La funzione ha archiviato tutte le informazioni sulle istanze attive del contatore impostate nel buffer specificato da pInstances . Il valore che pcbInstancesActual punta a indica la quantità di informazioni effettivamente archiviate nel buffer, in byte. |
|
Il buffer specificato da pInstance non è sufficiente per archiviare tutte le informazioni sulle istanze attive del set di contatori. Valore che pcbInstancesActual punta a indica le dimensioni del buffer necessarie per archiviare tutte le informazioni. Ingrandire il buffer all'oggetto richiesto dimensioni e chiamare di nuovo la funzione. |
Per altri tipi di errori, il valore restituito è un codice di errore di sistema.
Commenti
Le informazioni sulle istanze attive del set di contatori specificato vengono scritte nel buffer che pInstances specifica come sequenza di blocchi PERF_INSTANCE_HEADER . Dimensioni in byte di
la sequenza di blocchi viene scritta in pcbInstancesActual. Ogni blocco PERF_INSTANCE_HEADER è costituito
di una struttura PERF_INSTANCE_HEADER , immediatamente seguita da un UTF-16LE con terminazione null
nome dell'istanza, seguito dalla spaziatura interna in modo che le dimensioni dell'oggetto
PERF_INSTANCE_HEADER blocco è un multiplo di 8 byte.
Requisiti
Requisito | Valore |
---|---|
Client minimo supportato | Windows 10 versione 1607 [solo app desktop] |
Server minimo supportato | Windows Server 2016 [solo app desktop] |
Piattaforma di destinazione | Windows |
Intestazione | perflib.h |
Libreria | AdvAPI32.lib |
DLL | AdvAPI32.dll |