PdhExpandWildCardPathW, fonction (pdh.h)
Examine l’ordinateur ou le fichier journal spécifié et retourne les chemins de compteur qui correspondent au chemin du compteur donné qui contient des caractères génériques.
Pour utiliser des handles dans des sources de données, utilisez la fonction PdhExpandWildCardPathH .
Syntaxe
PDH_FUNCTION PdhExpandWildCardPathW(
[in] LPCWSTR szDataSource,
[in] LPCWSTR szWildCardPath,
[out] PZZWSTR mszExpandedPathList,
[in, out] LPDWORD pcchPathListLength,
[in] DWORD dwFlags
);
Paramètres
[in] szDataSource
Chaîne terminée par null qui contient le nom d’un fichier journal. La fonction utilise les objets de performances et les compteurs définis dans le fichier journal pour développer le chemin spécifié dans le paramètre szWildCardPath .
Si la valeur est NULL, la fonction recherche l’ordinateur spécifié dans szWildCardPath.
[in] szWildCardPath
Chaîne terminée par null qui spécifie le chemin d’accès du compteur à développer. La longueur maximale d’un chemin de compteur est PDH_MAX_COUNTER_PATH.
Si le paramètre szDataSource a la valeur NULL, la fonction recherche des 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 à l’appelant qui reçoit une liste de chemins de compteurs terminés par null qui correspondent à la spécification générique dans le szWildCardPath. La liste est terminé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 les TCHAR. Si zéro à l’entrée et que 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.
[in] dwFlags
Indicateurs qui indiquent les caractères génériques à ne pas développer. Vous pouvez spécifier un ou plusieurs indicateurs.
Valeur retournée
Si la fonction réussit, elle retourne ERROR_SUCCESS.
Si la fonction échoue, la valeur renvoyée est un code d’erreur système ou un code d’erreur PDH.
Code de retour | Description |
---|---|
|
La mémoire tampon mszExpandedPathList n’est pas assez grande pour contenir la liste des chemins d’accès. Cette valeur de retour est attendue si pcchPathListLength 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 compter sur la taille retournée pour réallouer la mémoire tampon. |
|
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. |
|
L’objet spécifié ne contient pas de instance. |
|
Impossible d’allouer de la mémoire pour prendre en charge cette fonction. |
|
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 surNULL et pcchPathListLength sur 0) et la deuxième fois pour obtenir les données.
PdhExpandWildCardPath diffère de PdhExpandCounterPath des manières suivantes :
- Vous permet de contrôler les caractères génériques qui sont développés.
- Le contenu d’un fichier journal peut être utilisé comme source de noms de compteurs.
\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 la 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
Si un caractère générique est spécifié dans le nom parent, toutes les instances de l’objet spécifié qui correspondent aux champs de instance et 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 instance, toutes les instances de l’objet et de l’objet parent spécifiés sont retournées si tous les noms instance correspondant à l’index spécifié correspondent au caractère générique. Par exemple, \object(parent/*)\counter. Si l’objet ne contient pas de instance, une erreur se produit.
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 de compteur partiel (par exemple, « pro* ») sont prises en charge.
Avant Windows Vista : Les correspondances génériques partielles ne sont pas prises en charge.
Notes
L’en-tête pdh.h définit PdhExpandWildCardPath comme un 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.
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
PdhBindInputDataSourceA, fonction