我用一个程序A里面调用另外一个程序B之后,向程序B发送虚拟键盘命令,但是焦点设置在了程序B上,主程序并不能正常的发送命令,此时我想将焦点重新设置在主程序A上,不知道该怎么做。
    其实我可以用两个按钮命令来解决这个问题,第一个按钮是打开程序B,第二个按钮是向被打开的程序发送命令,这样也能解决问题。但是我的对话框程序空间已经有限,所以想省掉一个按钮!!!
    看哪位能够帮我解决一下!!!

解决方案 »

  1.   

    我用一个程序A里面调用另外一个程序B之后,向程序B发送虚拟键盘命令,但是焦点设置在了程序B上,主程序并不能正常的发送命令,此时我想将焦点重新设置在主程序A上,不知道该怎么做。 
    ===================
    看不明白,焦点在B上,向B发键盘消息不是刚好可以吗?
      

  2.   

    void CMotorStepperTestDlg::OnButton2() 
    {
    // TODO: Add your control notification handler code here
      ShellExecute(NULL,"open","C:\\Program Files\\Netease\\POPO\\Start.exe",
      NULL,NULL,SW_SHOWNORMAL);
    HWND hwnd=::FindWindow("Netease Popo2006 MainForm","网易POPO");
    if (hwnd==NULL)
    {
    MessageBox("无法找到网易POPO");
    return;

    }
    CWnd::FromHandle(hwnd)->SetForegroundWindow();
    ::PostMessage(hwnd,WM_KEYDOWN,VK_RETURN,0L);
    }
    我把程序贴上来了,让大家看看撒!