如何向后台窗口发送鼠标移动和按键消息?(200分)

D

dprog

Unregistered / Unconfirmed
GUEST, unregistred user!
我想做一个网络游戏机器人,现遇到一个难题:如何在游戏最小化在后台时向游戏发送鼠标按键消息控制游戏?<br>遍寻全文检索也找不到答案,请大家给我一个例子好吗?<br>打个比方,能实现在计算器最小化时用模拟鼠标按键的方法在计算器上面按3个6吗?
 
SendMessage(aHwnd:HWND..<br>PostMessage(aHwnd:HWND..<br>WM_LBUTTONDOWN,WM_LBUTTONUP,WM_RBUTTONDOWN...<br>先遍历Window找到游戏主窗口的句柄<br>
 
对于SendMessage和PostMessage的具体用法,能不能举一个例子?
 
enumwindow,然后在发送消息
 
在Win32Help中或MSDN中输入这几个函数,有好些相关的内容和函数,自己看看吧<br>英文总是要懂一点的,等别人的时候,自己看也早就看完了
 
要不要看看兄弟写的qq轰炸机,不过只有鼠标,其实键盘也是一样的,留个箱子!
 
谢谢人在昆明! <br>ldcm1@163.COM<br>DPROG@SINA.COM
 
“oe 删除了对你的邮件中不安全的的附件的访问”<br>对不起阿,附件被oe删掉了,能不能再发到chnldc@sohu.com里阿?真不好意思
 
1、先用ENUMWINDOW函数查找目标窗口(即游戏窗口);<br>2、然后再用SENDMESSAGE或POSTMESSAGE向目标窗口发送消息(可先在游戏程序中自定义一<br>消息函数WM_USER+100);
 
发啦,不过如果是directx 下 的游戏会不成功的,呵呵!
 
zlc_168,你好,我刚开始接触api,能不能就这几个函数举一个简单的例子?<br>
 
有点疑惑了,我的目的是控制后台窗口的鼠标的移动,让鼠标移动到指定的位置点击游戏命令来控制游戏进行,我只要移动鼠标到按钮的位置再模拟点击就可以操纵游戏了,SendMessage能够实现这样的功能吗?
 
获得句柄,鼠标没有移动到哪里只是模拟了鼠标动作。<br>
 
人在昆明:给否发给小弟一份?<br>yzqmail@21cn.com
 
那我如果要用鼠标点击游戏里的按钮也要获得那个按钮的句柄才可以吗?
 
收到,谢了。
 
我觉得sendmessage的功能太繁琐,它可以绕过消息队列,直接发消息给窗口或控件,但是使用<br>上我还没有找到详细的资料介绍各种不同消息下的参数设置方法。<br>目前简单的介绍有VB下的:<br>Declare Function SendMessage Lib "user32" Alias "SendMessageA" _<br>(ByVal hwnd As Long, _<br>ByVal wMsg As Long, _<br>ByVal wParam As Long, _<br>lParam As Any) As Long<br>其中hwnd指定接受消息的窗口,参数wMsg指定消息值,参数wParam lParam分别定义传递到窗口的<br>附加参数。而在Windows系统的很多消息中,有一些不仅仅是提供一个窗口消息那么简单。它们可以控<br>制窗口的动作和属性。<br>delphi下的使用大致相同,但是对于不同的消息,后面的wParam和lParam的用法就不是很清楚了,请高手<br>指点哪里有资料。<br>另外我觉得要求不高的话用keyevent好像也可以的。
 
Win32Help<br>MSDN Win32 SDK<br>输入要查的消息的代号(WM_LBUTTONDOWN,WM_KEYDOWN),自然会看到<br><br>to雨过天晴<br>你是用VB?,我没用过,但是用Delphi的话,Delphi菜单里的Delphi帮助和Win32Help<br>你没用过吗?
 
顶部