请问怎样模拟一个窗口的鼠标输入,在线等 当窗口在最前面时,用mousemove或者sendmessage可以模拟鼠标输入 但是当窗口最小化了时应该用什么来模拟鼠标输入呢反正程序最终是调用一个函数,我想可不可以想办法调用这个函数,或者触发这个函数呢?? 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 第一步,获得该窗口句柄, HWND hWnd = (HWND)FindWindow(NULL,LPCTSTR strCaption);第二步,SetCursorPos(x,y);第三步,SendMessage(hWnd,WM_LBUTTON_DOWN,x,y); HWND hWnd = (HWND)FindWindow(NULL,LPCTSTR strCaption);SendMessage(hWnd,WM_LBUTTON_DOWN,x,y); 用sendmessage时,窗口没有焦点时行,但最小化就不行了 那颗能是最小化的时候你的程序已经不接受mousemove消息了吧!?你用钩子试试 SendInput就可以搞定,游戏中一般都是这样用的。 INPUT input;input.type=INPUT_MOUSE;input.mi.dx=0;input.mi.dy=0;input.mi.mouseData=0;input.mi.dwFlags=MOUSEEVENTF_LEFTDOWN;input.mi.time=0;input.mi.dwExtraInfo=(ULONG_PTR ) GetMessageExtraInfo ();::SendInput(1,&input,sizeof(INPUT)); INPUT input;input.type=INPUT_MOUSE;input.mi.dx=0;input.mi.dy=0;input.mi.mouseData=0;input.mi.dwFlags=MOUSEEVENTF_LEFTDOWN;input.mi.time=0;input.mi.dwExtraInfo=(ULONG_PTR ) GetMessageExtraInfo ();::SendInput(1,&input,sizeof(INPUT)); 谢谢水银,但窗口被最小化了,SendInput是不是只对使用DI的窗口起作用? 求助,DataGrid Control 6.0 显示问题。 MFC动画 急:几天了,都没人能解决,期待高手.关于htmleditview. 哪里有VC6或者更高版本的下载 请帮帮我解决一下异常处理,欲知详情请进~~ 请问如何得到文件夹名?在线等待,谢谢! 这个最简单不过的,我怎么就是不会呀. CListCtrl控件列宽如何精确确定 SNMP:如何确保TRAP消息发送到指定的管理控制台主机 cool button question 如何让一个按钮当鼠标移动到它上面,就调用一个函数。 用vc调用运行java的class文件
HWND hWnd = (HWND)FindWindow(NULL,LPCTSTR strCaption);
第二步,SetCursorPos(x,y);
第三步,SendMessage(hWnd,WM_LBUTTON_DOWN,x,y);
SendMessage(hWnd,WM_LBUTTON_DOWN,x,y);
input.type=INPUT_MOUSE;
input.mi.dx=0;
input.mi.dy=0;
input.mi.mouseData=0;
input.mi.dwFlags=MOUSEEVENTF_LEFTDOWN;
input.mi.time=0;
input.mi.dwExtraInfo=(ULONG_PTR ) GetMessageExtraInfo ();
::SendInput(1,&input,sizeof(INPUT));
input.type=INPUT_MOUSE;
input.mi.dx=0;
input.mi.dy=0;
input.mi.mouseData=0;
input.mi.dwFlags=MOUSEEVENTF_LEFTDOWN;
input.mi.time=0;
input.mi.dwExtraInfo=(ULONG_PTR ) GetMessageExtraInfo ();
::SendInput(1,&input,sizeof(INPUT));