我在CMainFrame中,单击一个菜单,会弹出CTestDlg::CDialog窗体,在CTestDlg中如果增加一个CButton控件类型变量DDX_Control(pDX,IDC_TEST,  m_test)时,单击取消OnCancel时,总是报错:  
   Debug  Assertion  Failed!  
   Program:******  
   File:wincore.cpp  
   Line:980  
 
 通过Call  Stack可以查看到如下信息:  
       CWnd::DestoryWindow()  line  980+35  bytes  
       CButton::~CButton()      line  55  
如果我不添加CButton控件类型变量,则不会出现此问题.  
 
小弟认为增加CButton控件类型变量应该不会导致这个错误呀,毕竟它是自已来调用DestoryWindow函数的呀.  
 
请高手指教,不胜感激!

解决方案 »

  1.   

    你把debug下的文件全删了再编一次看看
    可能是你以前错的地方(后来改了)引起的
      

  2.   

    对话框属性----  Style:Popup,Border:Dialog Frame,Title Bar, System menu.
    按钮:位图按钮
      

  3.   

    to wotur(熊) ,我试过,还是不行.另外,我若增加一个CEdit控件类型变量DDX_Control(pDX,IDC_TEST,  m_text)时,发现调用此句出错:   m_text.SetReadOnly(TRUE);
    出错信息:
       File:afxwin2.inl
       Line:870
       
    其中Call stack中出错信息:
       CEdit::SetReadOnly(int 1) Line 870+46 bytes
      

  4.   

    m_text.SetReadOnly(TRUE);
    在哪个函数中调用呢?
      

  5.   

    happyparrot,第二个问题我应该找到原因了,竟然犯了如此低级的错误:CDialog::OnInitDialog还没有调用,就调用m_text.SetReadOnly(TRUE);但是前一个问题一直找不到原因,请高手指点.对了,我在CTestDlg插入一个ActiveX控件(是VC6.0注册的ActiveX),应该与这个没有关系吧
      

  6.   

    It's nothing about Activex.
    CButton destory may be wrong or your vc compiler doesn't work well.
    Try to compile compeletely!