【发布时间】:2017-01-23 08:54:05
【问题描述】:
我正在尝试使用 Visual Studio 2015 在我的 MFC 属性网格中实现选择文件夹选项。像这样:
在 Properties.h 中:
CMFCPropertyGridCtrl GridCtrl;
CMFCPropertyGridFileProperty VideoFolder;
在 Properties.cpp 中:
Properties::Properties() : VideoFolder(L"Folder",L"C:\\Users\\")
{...}
int Properties::OnCreate(LPCREATESTRUCT lpCreateStruct)
{
[...]
GridCtrl.Create(WS_CHILD | WS_BORDER | WS_VISIBLE | WS_TABSTOP, Rect, this, NULL);
GridCtrl.AddProperty(ICANDI);
ICANDI->AddSubItem(&VideoFolder);
}
现在,编译成功,该项目按预期显示在属性网格中。但是当我单击项目上的按钮以在单独的对话框中选择一个文件夹时,我收到一个运行时错误,提示“调试断言失败!”表示 mfc140ud.dll 有问题。
有趣的是:这是在 Visual Studio 2008 中工作的,查看 Visual Studio 2008 Feature Pack 中的代码示例。有一个名为 NewControls 的示例,它调用相同的例程并且运行时不会崩溃。
【问题讨论】:
-
这可能有助于显示断言.....
-
“按重试调试应用程序” - 这将带您直接找到失败的表达式。这是您分析的一个很好的起点。您的问题也应该包含此信息。
标签: c++ visual-studio mfc