一个基于单文档的工程,添加了个对话框用于登录,启动后隐藏视图而显示对话框,输入密码和用户名后由socket发送至服务端,通过验证正确后服务返回“OK”,客户的线程接收到了“OK”,就执行:
if(strcmp(szBuff1,"OK")==0)
{

      AfxGetMainWnd()->ShowWindow(SW_SHOWMAXIMIZED);
      theApp.m_pMainWnd->UpdateWindow();
      dlg->PostMessage(WM_CLOSE);}
只看见视图晃了一下,什么都没了,请高手指点。

解决方案 »

  1.   

    不要意思,发错了。dlg->PostMessage有问题。
      

  2.   

    dlg->PostMessage只是关闭对话框而已,与视图没关系呀。
      

  3.   

    to enoloo:
    确实是dlg->PostMessage有问题,把它删除就好了,但对话框一直显示也不是我想要的,怎样关闭对话框呢?
      

  4.   

    dlg->EndDialog()也没关闭对话框。
      

  5.   

    代码加的地方错了,显示登录对话框时,  主框架和文件视图都应该还没创建才对, 
    即, 所有代码应该移动到
    CSingleDocTemplate* pDocTemplate;
    pDocTemplate = new CSingleDocTemplate(.....
    之前。
      

  6.   

    你可以这样呀:开始线程时关闭对话框EndDialog();