DlgDirListA, fonction (winuser.h)
Remplace le contenu d’une zone de liste par les noms des sous-répertoires et fichiers dans un répertoire spécifié. Vous pouvez filtrer la liste des noms en spécifiant un ensemble d’attributs de fichier. La liste peut éventuellement inclure des lecteurs mappés.
Syntaxe
int DlgDirListA(
[in] HWND hDlg,
[in, out] LPSTR lpPathSpec,
[in] int nIDListBox,
[in] int nIDStaticPath,
[in] UINT uFileType
);
Paramètres
[in] hDlg
Handle de la boîte de dialogue qui contient la zone de liste.
[in, out] lpPathSpec
Type : LPTSTR
Pointeur vers une mémoire tampon contenant une chaîne terminée par null qui spécifie un chemin d’accès absolu, un chemin relatif ou un nom de fichier. Un chemin d’accès absolu peut commencer par une lettre de lecteur (par exemple, d :) ou un nom UNC (par exemple, \<i>nom d’ordinateur\nom de partage).
La fonction fractionne la chaîne en un répertoire et un nom de fichier. La fonction recherche dans le répertoire les noms qui correspondent au nom de fichier. Si la chaîne ne spécifie pas de répertoire, la fonction recherche le répertoire actif.
Si la chaîne inclut un nom de fichier, le nom de fichier doit contenir au moins un caractère générique ( ? ou *). Si la chaîne n’inclut pas de nom de fichier, la fonction se comporte comme si vous aviez spécifié le caractère générique astérisque (*) comme nom de fichier. Tous les noms du répertoire spécifié qui correspondent au nom de fichier et dont les attributs sont spécifiés par le paramètre uFileType sont ajoutés à la zone de liste.
[in] nIDListBox
Type : int
Identificateur d’une zone de liste dans la boîte de dialogue hDlg. Si ce paramètre est égal à zéro, DlgDirList n’essaie pas de remplir une zone de liste.
[in] nIDStaticPath
Type : int
Identificateur d’un contrôle statique dans la boîte de dialogue hDlg. DlgDirList définit le texte de ce contrôle pour afficher le lecteur et le répertoire actuels. Ce paramètre peut être égal à zéro si vous ne souhaitez pas afficher le lecteur et le répertoire actuels.
[in] uFileType
Type : UINT
Spécifie les attributs des fichiers ou répertoires à ajouter à la zone de liste. Ce paramètre peut être une ou plusieurs des valeurs suivantes.
Valeur | Signification |
---|---|
|
Inclut des fichiers archivés. |
|
Inclut des sous-répertoires. Les noms des sous-répertoires sont placés entre crochets ([ ]). |
|
Tous les lecteurs mappés sont ajoutés à la liste. Les lecteurs sont répertoriés sous la forme [- x-], où x est la lettre de lecteur. |
|
Inclut uniquement les fichiers avec les attributs spécifiés. Par défaut, les fichiers en lecture/écriture sont répertoriés même si DDL_READWRITE n’est pas spécifié. |
|
Inclut des fichiers masqués. |
|
Inclut des fichiers en lecture seule. |
|
Inclut des fichiers en lecture/écriture sans attributs supplémentaires. Il s’agit du paramètre par défaut. |
|
Inclut les fichiers système. |
|
Si elle est définie, DlgDirList utilise la fonction PostMessage pour envoyer des messages à la zone de liste. S’il n’est pas défini, |
Valeur de retour
Type : int
Si la fonction réussit, la valeur de retour est différente de zéro.
Si la fonction échoue, la valeur de retour est égale à zéro. Par exemple, si la chaîne spécifiée par lpPathSpec n’est pas un chemin valide, la fonction échoue. Pour obtenir des informations d’erreur étendues, appelez .
Remarques
Si lpPathSpec spécifie un répertoire, DlgDirListComboBox remplace le répertoire actif par le répertoire spécifié avant de remplir la zone de liste. Le texte du contrôle statique identifié par le paramètre nIDStaticPath est défini sur le nom du nouveau répertoire actif.
DlgDirList envoie les messages LB_RESETCONTENT et LB_DIR à la zone de liste.
Si uFileType inclut l’indicateur DDL_DIRECTORY et lpPathSpec spécifie un répertoire de premier niveau, tel que C :\TEMP, la zone de liste inclut toujours une entrée « ». pour le répertoire racine. Cela est vrai même si le répertoire racine a des attributs masqués ou système et que les indicateurs DDL_HIDDEN et DDL_SYSTEM ne sont pas spécifiés. Le répertoire racine d’un volume NTFS a des attributs système et masqués.
La liste des répertoires affiche les noms de fichiers longs, le cas échéant.
Exemples
Pour obtenir des exemples, consultez les rubriques suivantes : Création d’une liste d’annuaires dans une zone de liste à sélection unique et Création d’une zone de liste à sélection multiple.
Note
L’en-tête winuser.h définit DlgDirList 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 Vista [applications de bureau uniquement] |
serveur minimum pris en charge | Windows Server 2003 [applications de bureau uniquement] |
plateforme cible | Windows |
d’en-tête | winuser.h (include Windows.h) |
bibliothèque | User32.lib |
DLL | User32.dll |
Voir aussi
de référence