【问题标题】:CMFCEditBrowseCtrl crashes when Browse Mode set to Folder Browse当浏览模式设置为文件夹浏览时 CMFCEditBrowseCtrl 崩溃
【发布时间】:2011-10-28 14:20:45
【问题描述】:

我正在尝试将 CMFCEditBrowseCtrl 添加到从 VC++ 6.0 升级的项目中。当 Browse Mode 设置为 File Browse 时,Browse 控件工作正常,但在出现“Debug Assertion Failed...File:f:\dd\vctools\vc7libs\ship\atlmfc\src\mfc\afxeditbrowsectrl.cpp Line 550”错误时浏览模式设置为文件夹浏览。

我还尝试在资源编辑器中将控件设置为文件浏览,并通过使用 EnableFolderBrowseButton() 函数在代码中将其设置为文件夹浏览。它会导致同样的问题。

我在一个简单的示例应用程序中进行了尝试,它运行良好,因此我比较了两个项目的项目设置。我发现的唯一区别在于 C/C++ 命令行。崩溃的项目包含“/D _VC80_UPGRADE=0x0600”条目。我想删除它,看看这是否是问题的原因。我怎样才能做到这一点?这是问题的原因吗?

谢谢

【问题讨论】:

    标签: visual-studio-2010 visual-c++ mfc


    【解决方案1】:

    我在调用 EnableFolderBrowseButton 时似乎遇到了同样的问题,Google 找到了这个解决方案并且它有效:

    http://connect.microsoft.com/VisualStudio/feedback/details/483908/enablefolderbrowsebutton-assertion-failure

    我应该在再次发布之前多搜索一下网络。这是修复:

    1. 我不得不将我的应用程序从 CWinApp 更改为 CWinAppEx
    2. 我必须在我的InitInstance() 中插入对CWinAppEx::GetShellManager() 的呼叫

    如果将其包含在我引用的 HowTo 中检查的内容中​​,可能会对其他人有所帮助。

    【讨论】:

    • 链接已失效(并且不在 a​​rchive.org 上)。
    • 您可能还需要添加#include #include
    【解决方案2】:

    我猜你有一个不同的WINVER。或者你的 exe 没有清单?

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-12-04
      • 2015-09-05
      • 2020-03-16
      • 1970-01-01
      • 2017-06-09
      • 2015-07-11
      相关资源
      最近更新 更多