используется для открытия файла в программе VC ++, скажем
C: \ Hello \ World \ abc.txt
.
Но я хочу использовать эту функцию, чтобы выбрать папку
C: \ Hello \ World
вместо файла в нем.
Я думаю, мне нужно внести некоторые изменения в члены структуры «OPENFILENAME». Может кто-нибудь любезно дай мне знать, как мне добиться этого в программе VC ++. Заранее спасибо.
GetOpenFileName вообще не поддерживает выбор папки.
Ваши варианты:
SHBrowseForFolder который доступен в Windows 2000 и более поздних версиях, но выглядит немного некрасиво.
IFileDialog который является собственным выбором платформы для платформы, но доступен только в Vista или новее. Чтобы диалог вел себя как средство выбора папки, передайте FOS_PICKFOLDERS в SetOptions,
На мой взгляд, лучшим результатом для пользователя является использование IFileDialog где доступно, но отступить к SHBrowseForFolder для старых операционных систем.
4
Другие решения
Там в SHBrowseForFolder. Множество примеров C ++ вокруг, если вы ищете.