摘要: var Gameh:HWND; GamePid:DWORD; Gamehprocess: THandle; SitNum :DWORD; readByte:DWORD;begin //获取游戏窗口句柄 Gameh:=findwindow(nil,'对对碰角色版'); //获取进程ID GetWindowThreadprocessID(Gameh,GamePid); //获取进程句柄 PROCESS_VM_READ or PROCESS_VM_WRITE 一个是读入内存权限 一个是写入内存数据权限 gamehProcess:=OpenProcess(PROCESS_VM_READ 阅读全文
posted @ 2013-04-24 17:35 GameKing 阅读(449) 评论(0) 推荐(0) 编辑
摘要: 在Window98以下,如果程序要激活自己,只需要简单的调用SetForegroundWindow即可达到目的。但到Win98以后,再也没有这么简单了。新建一个简单的工程,加进一个Timer控件,设置时间间隔为3秒,接着在时间事件中写SetForegroundWindow(Handle),好,运行程序,将窗口切换到后台,3秒钟之后,你看到的只是任务栏上闪了闪,窗口仍然躺在后面。这是怎么回事呢,原来在Win98以后,窗口要使用SetForegroundWindow激活自己, 必须得到“允许”,允许的方式有很多种,我只介绍最简单的一种,就是利用这个API:LockSetForegroundWind 阅读全文
posted @ 2013-04-24 17:16 GameKing 阅读(5096) 评论(0) 推荐(0) 编辑
摘要: {鼠标软模拟:好处就是不会真的移动鼠标 开始按钮 坐标 x=386y=387 }sendmessage(hookHwnd,messages.WM_LBUTTONDOWN ,0,$0180017A); {按下鼠标左键}sendmessage(hookHwnd,messages.WM_LBUTTONUP ,0, $0180017A); {抬起鼠标左键}{硬件模拟:会真的移动鼠标}mouse_event(MOUSEEVENTF_LEFTDOWN,X ,Y ,0,0);mouse_event(MOUSEEVENTF_LEFTUP,X ,Y ,0,0); 函数功能 该函数将指定的消息发送到一个... 阅读全文
posted @ 2013-04-24 17:05 GameKing 阅读(991) 评论(0) 推荐(0) 编辑