我创建了 一个对话框 然后自己写了一个构造函数 
CChatDlg(CString sname,CString scon)
{
  ...
}
然后在另一个对话框中点击按钮调用刚哪个对话框
CChatDlg cdlg("aaa","bbb");
cdlg.DoModal();
老是出错为什么?要怎么改?

解决方案 »

  1.   

    cdlg.Create(IDC_xxx,this); // IDC_xxx为CChatDlg的模板ID
      

  2.   

    我用断点调试出错是cdlg.DoModal();这句.
    错误是:
    Debug assertion failed!
    file: dlgcore.cpp
    line:462
      

  3.   

    你可以用debug版调试方式运行,出现对话框的时候点击重试,就会定位到出现这个assert错误的地方了,十有八九是你的对话框资源没找到,看看你的对话框类的头文件中写的IDD和资源中的是不是对应着的。
      

  4.   

    1。查找是不是构造函数写的有问题。
    2。看看是不是没有正确指定对话框资源。
    3。加上?#include "resource.h"
      

  5.   

    我也遇到同样问题,不过我是把逗号当点用了
    if(cdlg,DoModal()==IDOK)