Partager via


Fonction PerfEnumerateCounterSetInstances (perflib.h)

Obtient les noms et les identificateurs des instances actives d’un jeu de compteurs sur le

système spécifié.

Syntaxe

ULONG PerfEnumerateCounterSetInstances(
  [in, optional]  LPCWSTR               szMachine,
  [in]            LPCGUID               pCounterSetId,
  [out, optional] PPERF_INSTANCE_HEADER pInstances,
                  DWORD                 cbInstances,
  [out]           LPDWORD               pcbInstancesActual
);

Paramètres

[in, optional] szMachine

Nom de la machine pour laquelle obtenir les informations sur les instances actives du jeu de compteurs spécifié par le paramètre pCounterSet . Si la valeur est NULL, la fonction récupère des informations sur les instances actives du jeu de compteurs spécifié pour l’ordinateur local.

[in] pCounterSetId

Identificateur de jeu de compteurs du jeu de compteurs pour lequel vous souhaitez obtenir les informations sur les instances actives.

[out, optional] pInstances

Pointeur vers une mémoire tampon suffisamment grande pour recevoir la quantité de données spécifiée par le paramètre cbInstances . Peut être

NULL si cbInstances est 0.

cbInstances

Taille de la mémoire tampon spécifiée par le paramètre pInstances , en octets.

[out] pcbInstancesActual

Taille de la mémoire tampon réellement requise pour obtenir les informations sur les instances actives. La signification dépend de la valeur que la fonction

Retourne.

Valeur de retour de fonction Signification de pcbInstancesActual
ERROR_SUCCESS Nombre de

octets d’informations sur les instances actives du jeu de compteurs spécifié que la fonction stockée dans la mémoire tampon spécifiée par pInstances .

ERROR_NOT_ENOUGH_MEMORY The

taille de la mémoire tampon requise pour stocker les informations sur les instances actives du compteur défini sur l’ordinateur spécifié, en octets. Agrandir la mémoire tampon pour qu’elle soit requise

dimensionner et appeler à nouveau la fonction.

Autres La valeur n’est pas définie et ne doit pas être utilisée.

Valeur retournée

Code de retour Description
ERROR_SUCCESS
La fonction a correctement stocké toutes les informations sur les instances actives du compteur défini dans la mémoire tampon spécifiée par pInstances . Valeur que pcbInstancesActual pointe pour indiquer la quantité d’informations réellement stockées dans la mémoire tampon, en octets.
ERROR_NOT_ENOUGH_MEMORY
La mémoire tampon spécifiée par pInstances n’était pas assez grande pour stocker toutes les informations sur les instances actives du jeu de compteurs. La valeur vers laquelle pointe pcbInstancesActual indique la taille de la mémoire tampon requise pour stocker toutes les informations. Agrandir la mémoire tampon pour qu’elle soit requise

dimensionner et appeler à nouveau la fonction.

 

Pour d’autres types d’échecs, la valeur de retour est un code d’erreur système.

Remarques

Les informations sur les instances actives du jeu de compteurs spécifié sont écrites dans la mémoire tampon spécifiée par pInstances sous la forme d’une séquence de blocs PERF_INSTANCE_HEADER . Taille en octets de

la séquence de blocs est écrite dans pcbInstancesActual. Chaque bloc PERF_INSTANCE_HEADER se compose

d’une structure PERF_INSTANCE_HEADER , immédiatement suivie d’un UTF-16LE terminé par null

instance nom, suivi d’un remplissage de sorte que la taille du

PERF_INSTANCE_HEADER bloc est un multiple de 8 octets.

Configuration requise

Condition requise Valeur
Client minimal pris en charge Windows 10, version 1607 [applications de bureau uniquement]
Serveur minimal pris en charge Windows Server 2016 (applications de bureau uniquement)
Plateforme cible Windows
En-tête perflib.h
Bibliothèque AdvAPI32.lib
DLL AdvAPI32.dll

Voir aussi

PERF_INSTANCE_HEADER

PerfEnumerateCounterSet