Partager via


PdhExpandWildCardPathHA, fonction (pdh.h)

Examine l’ordinateur ou le fichier journal spécifié et retourne ces chemins d’accès de compteur qui correspondent au chemin d’accès de compteur donné qui contient des caractères génériques.

Cette fonction est identique à la fonction PdhExpandWildCardPath, sauf qu’elle prend en charge l’utilisation de handles pour les sources de données.

Syntaxe

PDH_FUNCTION PdhExpandWildCardPathHA(
  [in]      PDH_HLOG hDataSource,
  [in]      LPCSTR   szWildCardPath,
  [out]     PZZSTR   mszExpandedPathList,
  [in, out] LPDWORD  pcchPathListLength,
  [in]      DWORD    dwFlags
);

Paramètres

[in] hDataSource

Gérer vers une source de données retournée par la fonction PdhBindInputDataSource .

[in] szWildCardPath

chaîne null-terminated qui spécifie le chemin d’accès du compteur à développer. La longueur maximale d’un chemin d’accès de compteur est PDH_MAX_COUNTER_PATH.

Si hDataSource est une source de données en temps réel, la fonction recherche les correspondances sur l’ordinateur spécifié dans le chemin d’accès. Si le chemin d’accès ne spécifie pas d’ordinateur, la fonction recherche l’ordinateur local.

[out] mszExpandedPathList

Mémoire tampon allouée par l’appelant qui reçoit une liste de chemins d’accès de compteurs null null-terminated qui correspondent à la spécification de caractères génériques dans la szWildCardPath. La liste est arrêtée par deux caractères NULL. Défini sur NULL si pcchPathListLength est égal à zéro.

[in, out] pcchPathListLength

Taille de la mémoire tampon mszExpandedPathList , dans TCHARs . Si zéro sur l’entrée et l’objet existe, 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.

Remarque Vous devez en ajouter une à la taille requise sur Windows XP.
 

[in] dwFlags

Indicateurs qui indiquent les caractères génériques à ne pas développer. Vous pouvez spécifier un ou plusieurs indicateurs.

Valeur Signification
PDH_NOEXPANDCOUNTERS
Ne développez pas le nom du compteur si le chemin contient un caractère générique pour le nom du compteur.
PDH_NOEXPANDINSTANCES
Ne développez pas le nom de l’instance si le chemin d’accès contient un caractère générique pour l’instance parente, le nom de l’instance ou l’index d’instance.
PDH_REFRESHCOUNTERS
Actualisez la liste des compteurs.

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 .

Retourner le code Description
PDH_MORE_DATA
La mémoire tampon mszExpandedPathList n’est pas suffisamment grande pour contenir la liste des chemins d’accès. Cette valeur de retour est attendue si pcchPathListLength 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_ARGUMENT
Un paramètre n’est pas valide. 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 prendre en charge cette fonction.
PDH_CSTATUS_NO_OBJECT
Impossible de trouver l’objet spécifié sur l’ordinateur ou dans le fichier journal.

Remarques

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

PdhExpandWildCardPathH diffère de PdhExpandCounterPath de la manière suivante :

  1. Permet de contrôler les caractères génériques qui sont développés.
  2. Le contenu d’un fichier journal peut être utilisé comme source de noms de compteurs.
Le format général du chemin d’accès du compteur est le suivant :

\computer\object(parent/instance#index)\counter

Les composants parent, instance, index et compteur du chemin d’accès du compteur peuvent contenir un nom valide ou un caractère générique. Les composants ordinateur, parent, instance et index ne sont pas nécessaires pour tous les compteurs.

Voici une liste des formats possibles :

  • \\computer\object(parent/instance#index)\counter
  • \\computer\object(parent/instance)\counter
  • \\computer\object(instance#index)\counter
  • \\computer\object(instance)\counter
  • \\computer\object\counter
  • \object(parent/instance#index)\counter
  • \object(parent/instance)\counter
  • \object(instance#index)\counter
  • \object(instance)\counter
  • \object\counter
Utilisez un astérisque (*) comme caractère générique, par exemple \object(*)\counter.

Si un caractère générique est spécifié dans le nom parent, toutes les instances de l’objet spécifié qui correspondent à l’instance et aux champs de compteur spécifiés sont retournées. Par exemple, \object(*/instance)\counter.

Si un caractère générique est spécifié dans le nom de l’instance, toutes les instances de l’objet spécifié et de l’objet parent sont retournées si tous les noms d’instance correspondant à l’index spécifié correspondent au caractère générique. Par exemple, \object(parent/*)\counter.

Si un caractère générique est spécifié dans le nom du compteur, tous les compteurs de l’objet spécifié sont retournés.

Les correspondances de chaîne de chemin d’accès de compteur partiel (par exemple, « pro* ») sont prises en charge.

Avant Windows Vista : correspondances génériques partielles ne sont pas prises en charge.

Note

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

fonction PdhBindInputDataSourceAfonction PdhEnumObjectItemsHAfonction PdhEnumObjectsHAfonction PdhExpandCounterPathA