详细情况是这样的: 
对话框A是登录框,B是用户界面,A登录成功后调用B,隐藏A 
A之前和服务器建立了socket连接,因为B还需要用到这个连接,所以不销毁A,只是隐藏A 
可问题是现在B不能拖动,不能最大化最小化,而且任务栏也没有显示B,请问这些问题该如何解决? 
(B的对话框属性中选中最大化最小化框,可似乎只是摆设,点击没有任何效果,难道还要自己添加代码?)

解决方案 »

  1.   

    用DuplicateHandle把socket复制一份给B,应该就可以关掉A了
      

  2.   


    改成:
    B是用户界面,和服务器建立socket连接,对话框A是登录框;
    B初始化时或点击B中的登录时弹出 A,A中用B中的 socket连接进行验证,销毁或隐藏A。
    如何?
      

  3.   

    xlzxlich的方法感觉不错,可是这样改动比较大,我想先把要实现的功能实现后再统一规范化一下.这个窗口不能拖动到底是什么原因呢?弹出的别的窗口都可以正常拖动的
      

  4.   

    弹出B的代码贴出来看一下,也许是弹出B时,对B的设置有些小问题。
      

  5.   


    else if("log idpassword=ok \r\n"==str_log)
    {
    m_UserInterface.m_sockClient=&m_sockClient;
    m_UserInterface.m_myID=m_myID;
    ShowWindow(SW_HIDE);
    m_UserInterface.Create(IDD_USERINTERFACE);
    m_UserInterface.ShowWindow(SW_SHOW | SW_SHOWNORMAL);
    }
    代码很简单,别的地方没有做任何修改了,对话框属性也跟其他的对话框一样