DlgDirListComboBoxA, fonction (winuser.h)
Remplace le contenu d’une zone de liste modifiable par les noms des sous-répertoires et des 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 des noms peut inclure des lettres de lecteur mappées.
Syntaxe
int DlgDirListComboBoxA(
[in] HWND hDlg,
[in, out] LPSTR lpPathSpec,
[in] int nIDComboBox,
[in] int nIDStaticPath,
[in] UINT uFiletype
);
Paramètres
[in] hDlg
Handle de la boîte de dialogue qui contient la zone de liste déroulante.
[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 absolu peut commencer par une lettre de lecteur (par exemple, d :) ou un nom UNC (par exemple, \\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 du 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 liste affichée dans la zone de liste déroulante.
[in] nIDComboBox
Type : int
Identificateur d’une zone de liste modifiable dans la boîte de dialogue
[in] nIDStaticPath
Type : int
Identificateur d’un contrôle statique dans la boîte de dialogue hDlg. DlgDirListComboBox 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
Ensemble d’indicateurs de bits qui spécifie les attributs des fichiers ou répertoires à ajouter à la zone de liste déroulante. Ce paramètre peut être une combinaison des valeurs suivantes.
Valeur | Signification |
---|---|
|
Inclut des fichiers archivés. |
|
Inclut des sous-répertoires, 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 cet indicateur est défini, DlgDirListComboBox utilise la fonction PostMessage pour envoyer des messages à la zone de liste déroulante. Si cet indicateur n’est pas défini, DlgDirListComboBox 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 GetLastError.
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 déroulante. Le texte du contrôle statique identifié par le paramètre nIDStaticPath est défini sur le nom du nouveau répertoire actif.
DlgDirListComboBox envoie les messages CB_RESETCONTENT et CB_DIR à la zone de liste déroulante.
Microsoft Windows NT 4.0 et versions ultérieures : 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 modifiable 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.
Avertissement de sécurité : L’utilisation incorrecte de cette fonction peut compromettre la sécurité de votre programme. L’utilisation incorrecte de cette fonction inclut l’utilisation lpPathSpec indiquer une mémoire tampon non accessible en écriture ou une mémoire tampon sans terminaison null. Vous devez passer en revue les considérations de sécurité : Contrôles Microsoft Windows avant de continuer.
Microsoft Windows NT 4.0 et versions ultérieures : la liste affiche les noms de fichiers longs, le cas échéant.
Windows 95 ou version ultérieure : la liste affiche des noms de fichiers courts (formulaire 8.3). Vous pouvez utiliser les fonctions SHGetFileInfo ou GetFullPathName pour obtenir le nom de fichier long correspondant.
Windows 95 ou version ultérieure : DlgDirListComboBoxW est pris en charge par la couche Microsoft pour Unicode. Pour l’utiliser, vous devez ajouter certains fichiers à votre application, comme indiqué dans Microsoft Layer pour Unicode sur Windows Me/98/95 Systems.
Note
L’en-tête winuser.h définit DlgDirListComboBox 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