Partager via


PdhParseCounterPathA, fonction (pdh.h)

Analyse les éléments du chemin du compteur et stocke les résultats dans la structure PDH_COUNTER_PATH_ELEMENTS .

Syntaxe

PDH_FUNCTION PdhParseCounterPathA(
  [in]      LPCSTR                       szFullPathBuffer,
  [out]     PPDH_COUNTER_PATH_ELEMENTS_A pCounterPathElements,
  [in, out] LPDWORD                      pdwBufferSize,
            DWORD                        dwFlags
);

Paramètres

[in] szFullPathBuffer

Chaîne terminée par null qui contient le chemin du compteur à analyser. La longueur maximale d’un chemin de compteur est PDH_MAX_COUNTER_PATH.

[out] pCounterPathElements

Mémoire tampon allouée à l’appelant qui reçoit une structure PDH_COUNTER_PATH_ELEMENTS . La structure contient des pointeurs vers les éléments de chaîne individuels du chemin d’accès référencé par le paramètre szFullPathBuffer . La fonction ajoute les chaînes à la fin de la structure PDH_COUNTER_PATH_ELEMENTS . La mémoire tampon allouée doit être suffisamment grande pour la structure et les chaînes. Définissez sur NULL si pdwBufferSize a la valeur zéro.

[in, out] pdwBufferSize

Taille de la mémoire tampon pCounterPathElements , en octets. 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.

dwFlags

Réservé. Doit être zéro.

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_INVALID_ARGUMENT
Un paramètre n'est pas valide.
PDH_MORE_DATA
La mémoire tampon pCounterPathElements est trop petite pour contenir les éléments path. Cette valeur de retour est attendue si pdwBufferSize 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_PATH
Le chemin d’accès n’est pas correctement mis en forme et ne peut pas être analysé. 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.
PDH_MEMORY_ALLOCATION_FAILURE
Impossible d’allouer de la mémoire pour terminer la fonction.

Remarques

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

Notes

L’en-tête pdh.h définit PdhParseCounterPath 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

PdhMakeCounterPath