为什么使用下面的代码会把自身程序关闭窗口标题为“你好"的程序一起关闭呢???
HWND TheWindow;
TheWindow = ::FindWindow( NULL, "你好")//关闭窗口为你好的标题
::PostMessage( TheWindow, WM_CLOSE, 0, 0 );如何防止自身程序被关闭???

解决方案 »

  1.   

    PostMessage( TheWindow, WM_CLOSE, 0, 0 ); 
    发送这个消息的时候就关闭了
      

  2.   

    FindWindow 得到“你好”窗口句柄 PostMessage 发送WM_CLOSE消息 导致窗口关闭
    防止自身程序被外部消息关闭 可以自己处理WM_CLOSE
    在发送WM_CLOSE时带个参数 响应时判断是否有参数 没参数则是外部传来的 不处理
      

  3.   

    WM_CLOSE时如何带个参数呢???
      

  4.   


    ::PostMessage( TheWindow, WM_CLOSE, x, 0 );
    x
      

  5.   

    谢谢大家~~发现自身程序的关闭跟::PostMessage( TheWindow, WM_CLOSE, 0, 0 )
    没有关系~~~谢谢大家支持~原来是定义的数组越界使程序出现错误而自动退出的~