我已将在VS2005上运行的MFC应用程序转换为VS2010 在那里我有功能从CSelectDialog中选择一个文件或文件夹,它工作正常。
但是当我将项目转换为VS2010时,我现在只能选择文件。 我怎么能摆脱它呢?我找不到任何可用于此的库。
我只想在VS2010中使用MFC选择文件或文件夹
不要将此视为
的重复或
How do you configure an OpenFileDialog to select folders?
因为这些答案不适用于此。
答案 0 :(得分:2)
源文件对文件对话框中子控件的类型和ID有很多假设。如果文件对话框升级为vista样式,则会破坏这些假设。您可以在构造函数中使用bVistaStyle参数来禁用自动升级。
带有BIF_BROWSEINCLUDEFILES的SHBrowseForFolder是我所知道的唯一一次选择文件和文件夹的方法。您还可以考虑在Windows资源管理器和程序之间支持Shell Data Transfer(例如拖放,复制/粘贴)。
答案 1 :(得分:1)
看起来您正在使用CodeProject中可能与2010不兼容的一些代码。您应该使用标准CFileDialog来避免任何兼容性问题。