【问题标题】:Folder Selection in MFC application as "BIF_RETURNONLYFSDIRS" undeclared identifierMFC 应用程序中的文件夹选择为“BIF_RETURNONLYFSDIRS”未声明的标识符
【发布时间】:2014-01-12 08:29:37
【问题描述】:

我使用 MFC(Visual Studio 2010) 制作了一个应用程序,它有一个使用 MFC EditBrowse 控件的文件夹选择按钮。它适用于VS2010。但是当我在 VS2012 上运行该应用程序时,出现“BIF_RETURNONLYFSDIRS”未声明标识符的错误(错误 C2065)。为什么会出现错误,我在网上搜索过,但没有针对此类问题的正确答案。 谢谢

【问题讨论】:

  • 我在 VS2012 中使用 CMFCEditBrowseCtrl 没有问题,该标识符是无条件的 #define'ed 所以问题必须在一些我们看不到的代码中。可以发SSCCE吗?
  • 这个问题确实没有合适的答案。您可以尝试显式添加 #include <shlobj.h> 指令。怀疑它是否有效,去看看那个文件以检查它是否处于良好状态。
  • @Roger Rowland 和 Hans Passant:我的项目是 MFC 64 位,这是错误的原因吗?
  • @Hans Passant:我把 shlobj.h 放在 afxeditbrowserctrl.h 上面。然后就可以了。
  • @batuman;或在“afxeditbrowserctrl.h”之前添加“shlobj_core.h”,两者都有效。

标签: visual-studio-2010 visual-studio-2012 mfc


【解决方案1】:

解决方案是在“afxeditbrowserctrl.h”上方找到“shlobj.h”。然后它工作。 谢谢

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2010-11-30
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多