ファイルを保存する新しいフォルダーを選択するダイアログを作成しようとしています。IFileOpenDialogクラスは、新しいフォルダーを選択できないことを除けば、うまく機能します。
つまり、ダイアログの下部にある "Folder: C:\existings\new-folder" は、次のメッセージをポップアップ表示します。
new-folder
パスが存在しません。
パスを確認して、再試行してください。
これが私が持っているコードです:
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);
ポインタやハックをいただければ幸いです。ありがとう!
この他の質問からマイケルを引用するには:
[いくつかのコメントを避けるために、SHBrowseForFolder API はまだ存在しますが、UI 決定者にとって受け入れられるソリューションではありません。]
ここでも同じことが当てはまります...