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

Type : HWND

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
DDL_ARCHIVE
Inclut des fichiers archivés.
DDL_DIRECTORY
Inclut des sous-répertoires. Les noms des sous-répertoires sont placés entre crochets ([ ]).
DDL_DRIVES
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.
DDL_EXCLUSIVE
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é.
DDL_HIDDEN
Inclut des fichiers masqués.
DDL_READONLY
Inclut des fichiers en lecture seule.
DDL_READWRITE
Inclut des fichiers en lecture/écriture sans attributs supplémentaires. Il s’agit du paramètre par défaut.
DDL_SYSTEM
Inclut les fichiers système.
DDL_POSTMSGS
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, DlgDirList utilise la fonction SendMessage .

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

DlgDirListComboBox

DlgDirSelectComboBoxEx

DlgDirSelectEx

de référence