在一个单文档中,先通过SetParant()把MainFrame当前的指针给了DeomDlgA(),
然后在把DemoDlgA的指针给了LoginDlg,
a,然后在我对LoginDlg对话框按了取消后,想把单文档给半掉,就是程序都结束了,
但就是不成功,会跳出错误?看了一下Debug,说什么detected memory leaks!b.在DemoDlgA中,我按下一个Button时,也会把整个单文档给关掉,我这里也稍稍写了一下,好像这里是可以的,但是我工作的源代码还是会有点问题?我不知道为什么会这样的,附上源码,请各位大哥看看,或是给我一些更好的建议,谢谢各位了!!!这是我在www.vchelp.net中的帖子的地址.
http://www.vchelp.net/cndevforum/subject_view.asp?subject_id=161436&forum_id=22
谢谢大家了

解决方案 »

  1.   

    建议:判断登录密码的对话框放到C...App::InitInstance()中去,取消后return false;就退出程序了。
      

  2.   

    但是我这里的账号和密码是通过SOCKET传送的,
    所以在C...App这里的话,用这个return false的,好像不是太妥
      

  3.   

    有什么不妥的?在InintInstance中调用一些初始化工作也很正常。
      

  4.   

    因为我这个Socket是在另外一个对话框的时候,初始化的,
    就是先出来一个MainFrm,然后在出来一个A对话框,在A对话框的时候,然后在建立Socket和登录对话框,因为这个socket与登录框是同级别的,
    不想在C...app这里就加入LoginDlg.Domodl();
    因为跟socket结合不起来。
      

  5.   

    挺乱的。干脆直接exit(0)得了,应用程序退出时的泄漏并不要紧。
    虽然不是很好的办法。
      

  6.   

    pMainFrame->PostMessage(WM_CLOSE); //do not use SendMessage