GetOpenFileNameA, fonction (commdlg.h)
[À compter de Windows Vista, les boîtes de dialogue Ouvrir et Enregistrer en tant que communes ont été remplacées par la boîte de dialogue Élément commun. Nous vous recommandons d’utiliser l’API Common Item Dialog au lieu de ces boîtes de dialogue à partir de la bibliothèque de boîtes de dialogue commune.]
Crée une boîte de dialogue Ouvrir qui permet à l’utilisateur de spécifier le lecteur, le répertoire et le nom d’un fichier ou d’un ensemble de fichiers à ouvrir.
Syntaxe
BOOL GetOpenFileNameA(
[in, out] LPOPENFILENAMEA unnamedParam1
);
Paramètres
[in, out] unnamedParam1
Type : LPOPENFILENAME
Pointeur vers une structure OPENFILENAME qui contient les informations utilisées pour initialiser la boîte de dialogue. Lorsque GetOpenFileName retourne, cette structure contient des informations sur la sélection de fichiers de l’utilisateur.
Valeur retournée
Type : BOOL
Si l’utilisateur spécifie un nom de fichier et clique sur le bouton OK , la valeur de retour est différente de zéro. La mémoire tampon pointée vers le membre lpstrFile de la structure OPENFILENAME contient le chemin d’accès complet et le nom de fichier spécifiés par l’utilisateur.
Si l’utilisateur annule ou ferme la boîte de dialogue Ouvrir ou si une erreur se produit, la valeur de retour est zéro. Pour obtenir des informations d’erreur étendues, appelez la fonction CommDlgExtendedError , qui peut retourner l’une des valeurs suivantes.
Remarques
La boîte de dialogue Ouvrir de style Explorer fournit des fonctionnalités d’interface utilisateur similaires à celles du Explorer Windows. Vous pouvez fournir une procédure de crochet OFNHookProc pour une boîte de dialogue Ouvrir de style Explorer. Pour activer la procédure de crochet, définissez les indicateurs OFN_EXPLORER et OFN_ENABLEHOOK dans le membre Flags de la structure OPENFILENAME et spécifiez l’adresse de la procédure de crochet dans le membre lpfnHook .
Windows continue de prendre en charge l’ancienne boîte de dialogue Ouvrir pour les applications qui souhaitent maintenir une interface utilisateur cohérente avec l’ancienne interface utilisateur. Pour afficher l’ancienne boîte de dialogue Ouvrir , activez une procédure de crochet OFNHookProcOldStyle et vérifiez que l’indicateur OFN_EXPLORER n’est pas défini.
Pour afficher une boîte de dialogue qui permet à l’utilisateur de sélectionner un répertoire au lieu d’un fichier, appelez la fonction SHBrowseForFolder .
Notez que lors de la sélection de plusieurs fichiers, la limite de caractères totale pour les noms de fichiers dépend de la version de la fonction.
- ANSI : limite de 32 000
- Unicode : aucune restriction
Exemples
Pour obtenir un exemple, consultez Ouverture d’un fichier.
Notes
L’en-tête commdlg.h définit GetOpenFileName 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 2000 Professionnel [applications de bureau uniquement] |
Serveur minimal pris en charge | Windows 2000 Server [applications de bureau uniquement] |
Plateforme cible | Windows |
En-tête | commdlg.h (inclure Windows.h) |
Bibliothèque | Comdlg32.lib |
DLL | Comdlg32.dll |
Ensemble d’API | ext-ms-win-shell-comdlg32-l1-1-1 (introduit dans Windows 10, version 10.0.14393) |
Voir aussi
Bibliothèque de boîtes de dialogue commune
Conceptuel
Autres ressources
Référence