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 null-terminated qui contient le chemin d’accès du compteur à analyser. La longueur maximale d’un chemin d’accès de compteur est PDH_MAX_COUNTER_PATH.

[out] pCounterPathElements

Mémoire tampon allouée par 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 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éfini sur NULL si pdwBufferSize est égal à zéro.

[in, out] pdwBufferSize

Taille de la mémoire tampon pCounterPathElements, en octets. Si zéro sur 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 compter sur la taille retournée pour réallouer la mémoire tampon.

dwFlags

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

Valeur de retour

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.

Retourner le code Description
PDH_INVALID_ARGUMENT
Un paramètre n’est pas valide.
PDH_MORE_DATA
Les pCounterPathElements tampon sont trop petits pour contenir les éléments de chemin d’accès. Cette valeur de retour est attendue si pdwBufferSize est égal à zéro lors de l’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 compter 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.

Note

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

Exigences

Exigence Valeur
client minimum pris en charge Windows XP [applications de bureau uniquement]
serveur minimum pris en charge Windows Server 2003 [applications de bureau uniquement]
plateforme cible Windows
d’en-tête pdh.h
bibliothèque Pdh.lib
DLL Pdh.dll

Voir aussi

PDH_COUNTER_PATH_ELEMENTS

PdhMakeCounterPath