Я пытаюсь создать диалоговое окно для выбора новой папки для сохранения файлов. Класс IFileOpenDialog прекрасно работает, за исключением того, что он не позволяет выбирать новую папку.
т.е. «Папка: C: \ Существование \ Новая папка» в нижней части диалогового окна появляется следующее сообщение:
новая папка
Путь не существует.
Проверьте путь и попробуйте снова.
Вот код, который я получил:
IFileDialog* fileDialog
CoCreateInstance(CLSID_FileOpenDialog, NULL, CLSCTX_INPROC_SERVER,
IID_PPV_ARGS(&fileDialog));
DWORD options;
fileDialog->GetOptions(&options);
options &= ~FOS_FILEMUSTEXIST;
options &= ~FOS_PATHMUSTEXIST;
fileDialog->SetOptions(options | FOS_PICKFOLDERS);
fileDialog->Show(parentWindow);
Любые указатели или хаки будут оценены! Спасибо!
Цитирую Майкла из этого другого вопроса :
[Чтобы исключить некоторые комментарии, API SHBrowseForFolder все еще существует, но все еще не является приемлемым решением для наших разработчиков интерфейса.]
То же самое относится и здесь ...