Debug Assertion Failed! Program:d\aaa\debug\aaa.exe 
File:dlgcore.cpp 
Line:494 For information on how your program can cause an assertion failure,see the Visual C++ documentation on asserts. (Press Retry to debug the application) 点击Retry后,程序关闭,系统报错误。 dlgcore.cpp 文件的494行语句:
ASSERT(m_lpszTemplateName != NULL || m_hDialogTemplate != NULL ||
m_lpDialogTemplate != NULL);
不知道如何解决,请高手指教,非常急,谢谢!

解决方案 »

  1.   

    资源没有找到,很奇怪为什么调试会没问题。clean/rebuild
      

  2.   

    是domodal()的问题吧,你看看是不是你的变量实效了
      

  3.   

    是不是你删控件时未删干净,比如与控件有关的DDX()函数应注释掉
      

  4.   

    使用下我的工具调试信息查看器(将信息输出到这个工具上显示),看下能不能找到出错的地方,再去查找那块的代码。或者,如果程序的多个模块的,随便找个dll调试,找到出错的堆栈,也能判断出错在哪里。如果是逻辑错误就难判断点。
      

  5.   

    是对话框的资源ID的问题,在定义对话框时带上了对话框的ID及指向父窗口的指针THIS,运行时可以弹出对话框,但又出现了新的问题,重发了贴子了,希望知道的朋友指教下!
      

  6.   

    没有这么使用CDialog的,最简单的方法就是使用向导自动生成CXXXDialog的类,由向导生成类代码
    直接使用CDialog需要一些技巧
      

  7.   

    CDialog myDialog(IDD_GIVECODE,this)我是这么定义的,如果直接 CDialog myDialog;运行时出现错误,对话框弹不出来啊,这么定义后,无法调用myDialog的DoModal成员函数,但是能弹出对话框了,问题多多阿,到底是什么原因呢????
      

  8.   

    enum { IDD = IDD_GIVECODE};看是不是这样。
    看对话框资源的id是不是IDD_GIVECODE,rebuild all看看。
      

  9.   

    对话框资源的id 的问题.
    看看resource.h中有没有定义错了的ID资源.