无效的对话框模板名称MFC

时间:2012-06-21 10:55:45

标签: visual-c++ mfc visual-c++-2008

我在MFC应用中创建了一个对话框,如下所示:

  

BackfaceControlPoints * controlpoints = new BackfaceControlPoints();

     

controlpoints->创建(BackfaceControlPoints :: IDD);

     

controlpoints->的ShowWindow(SW_SHOWNORMAL);

我编译得很好,但是当我尝试运行应用程序时,我正在尝试创建对话框时获得调试断言。

下面是dlgcore.cpp的行,我在这里得到调试断言。

  

if(!_AfxCheckDialogTemplate(lpszTemplateName,FALSE))

     

{           ASSERT(FALSE); //无效的对话框模板名称

我正在为这个项目使用一个单独的dll(从解决方案的主项目中加载它。)和“在静态lubrary中使用mfc”选项。 请帮我。 感谢。

1 个答案:

答案 0 :(得分:3)

通常,当MFC无法在资源中找到您的对话框时会发生错误。您的项目听起来有点奇怪,因为它听起来好像您正在创建MFC库并静态链接它们和应用程序?

在调用控制点之前 - > Create(),使用包含对话框资源的DLL的HINSTANCE调用AfxSetResourceHandle()。如果您开始变得奇怪的资源相关失败,您可能希望在通话后将其重置回原始状态。