+ -
当前位置:首页 → 问答吧 → 求助:向其他进程对话框发送点击button消息,无响应

求助:向其他进程对话框发送点击button消息,无响应

时间:2011-12-02

来源:互联网

很简单的程序

WinExec("E:\\软件安装\\网络相关\\BaiduPlayer1.0.23.21.exe",SW_SHOW);
Sleep(10000);
HWND hWindow=FindWindowA("#32770","百度影音1.0.23.21 安装");
if(hWindow!=NULL)
{
HWND hButton=FindWindowEx(hWindow,NULL,"Button","下一步(&N) >");
if (hButton)
{
PostMessage(hButton, WM_LBUTTONDOWN, NULL, NULL);
PostMessage(hButton, WM_LBUTTONUP, NULL, NULL);
}
}

当"百度影音1.0.23.21 安装"窗口处于激活状态时,可以实现点击;但当"百度影音1.0.23.21 安装"窗口不在顶层时,“下一步”按钮只是被设为焦点,不能实现点击效果。用SetForegroundWindow设置到顶层后,可以实现点击。有没有办法不在顶层时实现点击?请高手指点!

作者: voilin1983   发布时间: 2011-12-02

趴在桌上 看着屏幕 在线等高手~
急切~热切等待回答~

作者: voilin1983   发布时间: 2011-12-02

在if语句和PostMessage之间加上SetCapture语句试试,记着在合适的地方ReleaseCapture哦.
C/C++ code

if (hButton)
{
   SetCapture(hButton);
   PostMessage(hButton, WM_LBUTTONDOWN, NULL, NULL);
   PostMessage(hButton, WM_LBUTTONUP, NULL, NULL);
} 

作者: yuucyf   发布时间: 2011-12-02

热门下载

更多