【问题标题】:invalid dialog template name MFC无效的对话框模板名称 MFC
【发布时间】:2023-03-26 03:46:01
【问题描述】:

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

BackfaceControlPoints *controlpoints = new BackfaceControlPoints();

控制点->创建(BackfaceControlPoints::IDD);

控制点->ShowWindow(SW_SHOWNORMAL);

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

下面是 dlgcore.cpp 中我获取调试断言的行。

if (!_AfxCheckDialogTemplate(lpszTemplateName, FALSE))

{ 断言(错误); // 无效的对话框模板名称

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

【问题讨论】:

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


    【解决方案1】:

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

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

    【讨论】:

    • 谢谢乔。我按照你说的解决了这个问题。
    猜你喜欢
    • 2011-07-01
    • 1970-01-01
    • 1970-01-01
    • 2012-02-09
    • 1970-01-01
    • 2013-08-26
    • 2013-09-22
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多