应该给父窗口发一个WM_CLOSE消息就可以了
::PostMessage(GetParent()->m_hWnd,WM_CLOSE,0,0);
试试看吧

解决方案 »

  1.   

    to spark_zh()
    这样会不会把本窗口也关闭了?
      

  2.   

    没准会把本窗口也关掉,你让父窗口不显示就行了,为什么非要关上。
    GetParent()->ShowWindow(false);
      

  3.   

    "父窗口" ???
    The window will be destroyed before its parent is destroyed.
    ????
    What is your problem?
      

  4.   

    在子窗口B里面定义一个父窗口的指针变量A,在B窗口出来之后,在对B.A->调用关闭命令就可以了,我在http://www.csdn.net/expert/topic/439/439152.shtm里面有类似的问题解决,可以到那里面去侃侃。
      

  5.   

    CDlgNewSignal DlgSignal;
    PostMessage(WM_COMMAND,IDCANCEL);
    DlgSignal.DoModal();
    这段代码在第一个窗口里面调用(比如说按按钮,就放按钮的OnLButtonDown里面)
    先初始化第二个,然后给自己发消息(IDCANCEL)
    再对第二个窗口调用DoModal();
      

  6.   

    你说的是要做象安装程序那样的 下一步、下一步、完成 是吧。
    这个不用什么关对话框,mfc提供了一套CPropertySheet和CPropertyPage就可以做这种东西。
      

  7.   

    父窗口被摧毁难道子窗口还会存在吗?:),隐藏父窗口,或者将你那个子窗口的父窗口设置为NULL!