Partager via


PdhMakeCounterPathA, fonction (pdh.h)

Crée un chemin de compteur complet à l’aide des membres spécifiés dans la structure PDH_COUNTER_PATH_ELEMENTS .

Syntaxe

PDH_FUNCTION PdhMakeCounterPathA(
  [in]      PPDH_COUNTER_PATH_ELEMENTS_A pCounterPathElements,
  [out]     LPSTR                        szFullPathBuffer,
  [in, out] LPDWORD                      pcchBufferSize,
  [in]      DWORD                        dwFlags
);

Paramètres

[in] pCounterPathElements

Structure PDH_COUNTER_PATH_ELEMENTS qui contient les membres utilisés pour créer le chemin d’accès. Seuls les membres szObjectName et szCounterName sont obligatoires, les autres sont facultatifs.

Si le membre de nom instance est NULL, le chemin d’accès ne contient pas de référence instance et les membres szParentInstance et dwInstanceIndex sont ignorés.

[out] szFullPathBuffer

Mémoire tampon allouée à l’appelant qui reçoit un chemin de compteur terminé par null. La longueur maximale d’un chemin de compteur est PDH_MAX_COUNTER_PATH. Définissez sur NULL si pcchBufferSize a la valeur zéro.

[in, out] pcchBufferSize

Taille de la mémoire tampon szFullPathBuffer , en TCHAR. Si la valeur est zéro à l’entrée, la fonction retourne PDH_MORE_DATA et définit ce paramètre sur la taille de mémoire tampon requise. Si la mémoire tampon est supérieure à la taille requise, la fonction définit ce paramètre sur la taille réelle de la mémoire tampon utilisée. Si la taille spécifiée sur l’entrée est supérieure à zéro, mais inférieure à la taille requise, vous ne devez pas vous appuyer sur la taille retournée pour réallouer la mémoire tampon.

[in] dwFlags

Format des valeurs des compteurs d’entrée et de sortie. Vous pouvez spécifier l’une des valeurs suivantes.

Valeur Signification
PDH_PATH_WBEM_RESULT
Convertit un chemin d’accès PDH au format de nom de propriété et de classe WMI.
PDH_PATH_WBEM_INPUT
Convertit la classe WMI et le nom de propriété en chemin d’accès PDH.
0
Retourne le chemin au format PDH, par exemple, \\computer\object(parent/instance#index)\counter.

Valeur retournée

Si la fonction réussit, elle retourne ERROR_SUCCESS.

Si la fonction échoue, la valeur de retour est un code d’erreur système ou un code d’erreur PDH. Voici les valeurs possibles.

Code de retour Description
PDH_MORE_DATA
La mémoire tampon szFullPathBuffer est trop petite pour contenir le nom du compteur. Cette valeur de retour est attendue si pcchBufferSize est égal à zéro en entrée. Si la taille spécifiée sur l’entrée est supérieure à zéro, mais inférieure à la taille requise, vous ne devez pas vous appuyer sur la taille retournée pour réallouer la mémoire tampon.
PDH_INVALID_ARGUMENT
Un paramètre n’est pas valide ou est mal mis en forme. Par exemple, sur certaines versions, vous pouvez recevoir cette erreur si la taille spécifiée sur l’entrée est supérieure à zéro, mais inférieure à la taille requise.

Remarques

Vous devez appeler cette fonction deux fois, la première fois pour obtenir la taille de mémoire tampon requise ( définissez szFullPathBuffer sur NULL et pcchBufferSize sur 0) et la deuxième fois pour obtenir les données.

Notes

L’en-tête pdh.h définit PdhMakeCounterPath en tant qu’alias qui sélectionne automatiquement la version ANSI ou Unicode de cette fonction en fonction de la définition de la constante de préprocesseur UNICODE. La combinaison de l’utilisation de l’alias neutre en encodage avec du code qui n’est pas neutre en encodage peut entraîner des incompatibilités qui entraînent des erreurs de compilation ou d’exécution. Pour plus d’informations, consultez Conventions pour les prototypes de fonction.

Configuration requise

Condition requise Valeur
Client minimal pris en charge Windows XP [applications de bureau uniquement]
Serveur minimal pris en charge Windows Server 2003 [applications de bureau uniquement]
Plateforme cible Windows
En-tête pdh.h
Bibliothèque Pdh.lib
DLL Pdh.dll

Voir aussi

PDH_COUNTER_PATH_ELEMENTS

PdhParseCounterPath