前段时间跟以前的同事玩QQ游戏对对碰,结果输的好惨,后来在网上看到了有对对碰的外挂,但还需要注册,就考虑既然别人可以写出来,我为什么就不能写出来呢?于是花了一个下午的时间仔细研究了一下,把外挂写了出来。
其实原理很简单,只要将棋盘上面的数据保存起来,然后经过分析就可以知道移动哪里的动物,然后再通过模拟鼠标消息来点击两个位置就可以了。
1)获取棋盘数据
要得到棋盘的数据进行分析,思路是这样:首先得获得对对碰的窗口,然后对窗口上面的象素进行分析,从而获取每个格子中的数据。对于每个格子里面的动物,一定可以有几个有特征的点使得可以区分开每个格子中的动物,可以用用2到3个点的数据保存一个动物,这样把每个格子中动物的数据都获得后,棋盘的数据也就出来了。
首先,要得到对对碰的窗口,这个比较简单,可以用::FindWindow来实现,具体代码如下:
CQQGameToolDlg * dlg = (CQQGameToolDlg *)parm;//这里因为这个函数是作为一个线程来做的,所以得传递一个参数过来
dlg->hWnd = ::FindWindow(NULL,"QQ对对碰");//查询
if(dlg->hWnd == NULL)
dlg->hWnd = ::FindWindow(NULL,"对对碰");//好像窗口标题有时还不同,不知道是不是我自己搞错了
if(dlg->hWnd == NULL)
{
AfxMessageB
教你用VC6做QQ对对碰外挂程序
最新推荐文章于 2024-04-13 13:48:48 发布