MessageBox("asdf","dd");
HWND hWnd=::FindWindow(NULL,"dd");
::PostMessage(hWnd,WM_CLOSE,0,0);
如上,不错对在哪里?

解决方案 »

  1.   

    你调用MessageBox之后你必须点击确定按钮才能运行到下面的代码。HWND hWnd=::FindWindow(NULL,"dd");
    ::PostMessage(hWnd,WM_CLOSE,0,0); 
    这些代码不会运行。等运行的时候你的对话框也已经关闭了。
      

  2.   

    你的MessageBox是不是在你的主窗口中弹出的,然后想通过主窗口关闭它?如果是这样肯定不行,因为堵塞了
      

  3.   

    MessageBox("asdf","dd"); 
    HWND hWnd=::FindWindow(NULL,"dd"); 
    ::PostMessage(hWnd,WM_CLOSE,0,0); 
    这2句是不可能运行的。
      

  4.   

    MessageBox显示的是模态窗体,程序执行到这里的时候会停下来,等待前台响应后才返回,就是你要点击了OK或者Yes后才会往下执行。
      

  5.   

    呵呵,你是不是想做一个AutoCloser功能的软件啊。
      

  6.   

    你是不是想在弹出后就自动关闭?这个简单可以自己定义个全局热键,用RegisterHotKey,在热键的处理函数中,放你那2句。
      

  7.   

    用定时器,Hook,修改WndProc的消息处理,都是可以的