DlgDirSelectExW, fonction (winuser.h)
Récupère la sélection actuelle à partir d’une zone de liste à sélection unique. Il suppose que la zone de liste a été remplie par la fonction DlgDirList et que la sélection est une lettre de lecteur, un nom de fichier ou un nom de répertoire.
Syntaxe
BOOL DlgDirSelectExW(
[in] HWND hwndDlg,
[out] LPWSTR lpString,
[in] int chCount,
[in] int idListBox
);
Paramètres
[in] hwndDlg
Type : HWND
Handle de la boîte de dialogue qui contient la zone de liste.
[out] lpString
Type : LPTSTR
Pointeur vers une mémoire tampon qui reçoit le chemin sélectionné.
[in] chCount
Type : int
Longueur, en TCHAR, de la mémoire tampon pointée par lpString.
[in] idListBox
Type : int
Identificateur d’une zone de liste dans la boîte de dialogue.
Valeur retournée
Type : BOOL
Si la sélection actuelle est un nom de répertoire, la valeur de retour est différente de zéro.
Si la sélection actuelle n’est pas un nom de répertoire, la valeur de retour est zéro. Pour obtenir des informations détaillées sur l’erreur, appelez GetLastError.
Remarques
La fonction DlgDirSelectEx copie la sélection dans la mémoire tampon vers laquelle pointe le paramètre lpString . Si la sélection actuelle est un nom de répertoire ou une lettre de lecteur, DlgDirSelectEx supprime les crochets englobants (et les traits d’union, pour les lettres de lecteur), afin que le nom ou la lettre soit prêt à être inséré dans un nouveau chemin. En l’absence de sélection, lpString ne change pas. Si la chaîne est aussi longue ou plus longue que la mémoire tampon, la mémoire tampon contient la chaîne tronquée avec un caractère null de fin.
DlgDirSelectEx envoie des messages LB_GETCURSEL et LB_GETTEXT à la zone de liste. La fonction n’autorise pas le retour de plusieurs noms de fichier à partir d’une zone de liste. La zone de liste ne doit pas être une zone de liste à sélection multiple. Si c’est le cas, cette fonction ne retourne pas de valeur zéro et lpString reste inchangé.
Windows 95 ou version ultérieure : DlgDirSelectExW est pris en charge par Microsoft Layer pour Unicode. Pour l’utiliser, vous devez ajouter certains fichiers à votre application, comme indiqué dans Microsoft Layer pour Unicode sur les systèmes Windows Me/98/95.
Exemples
Pour obtenir un exemple, consultez Création d’une liste d’annuaires dans une zone de liste à sélection unique.
Notes
L’en-tête winuser.h définit DlgDirSelectEx en tant qu’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. La combinaison 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 Vista [applications de bureau uniquement] |
Serveur minimal pris en charge | Windows Server 2003 [applications de bureau uniquement] |
Plateforme cible | Windows |
En-tête | winuser.h (inclure Windows.h) |
Bibliothèque | User32.lib |
DLL | User32.dll |
Voir aussi
Référence