【发布时间】:2015-07-22 07:02:30
【问题描述】:
我正在使用 MFC 的 CFileDialog 来选择一个文件。我只对完整的文件路径感兴趣,因为我的应用程序不会直接打开它。尽管文件对话框通过声明拒绝选择文件:“您没有打开此文件的读取权限”。 (这是正确的——我没有读取权限;我不想打开文件。)
那么,在 Windows 下有没有办法通过文件对话框来获取路径?
这是我的代码:
CFileDialog dlg(true, nullptr, nullptr, OFN_FILEMUSTEXIST, nullptr, nullptr, 0, true);
dlg.DoModal();
【问题讨论】:
-
我认为除非设置了
OFN_NOREADONLYRETURN,否则不应该发生这种情况。显示您用于CFileDialog的代码。 -
@BarmakShemirani 否,
OFN_NOREADONLYRETURN未设置。我刚刚用示例代码更新了我的帖子。 -
尝试添加 OFN_READONLY
-
@HansPassant
OFN_READONLY没有帮助。我既不想写,也不想读文件。我根本不想打开它! -
您是否尝试从 CFileDialog 继承并覆盖
virtual BOOL OnFileNameOK( );?
标签: winapi mfc openfiledialog