注册 登录
编程论坛 C++教室

[求助]关于一个外挂的源程序!帮帮忙改正一下!

foxtt123 发布于 2007-09-08 22:21, 1164 次点击


//首先,要得到对对碰的窗口,这个比较简单,可以用::FindWindow来实现,具体代码如下:

CQQGameToolDlg * dlg = (CQQGameToolDlg *)parm;//这里因为这个函数是作为一个线程来做的,所以得传递一个参数过来
dlg->hWnd = ::FindWindow(NULL,"QQ对对碰");//查询
if(dlg->hWnd == NULL)
dlg->hWnd = ::FindWindow(NULL,"对对碰");//好像窗口标题有时还不同,不知道是不是我自己搞错了
if(dlg->hWnd == NULL)
{
AfxMessageBox("未找到对对碰窗口,请首先启动对对碰!");
dlg->SetDlgItemText(IDC_BUTTON1,"启动");
dlg->m_bStart = false;
return 0;
}


dlg->hDc = ::GetDC(dlg->hWnd);

//下边的函数是为了获取每一个方格的数据的

COLORREF * CQQGameToolDlg::GetRectData(int x, int y)
{
COLORREF * color;
color = new COLORREF[48];
int count = 0;
for(int i=(x-1)*48 + m_posX;i<(x-1)*48 + m_posX + 48;i++)
{
color[count++] = GetPixel(hDc,i,(y-1)*48 + m_posY + 20);
//如果是棋盘的底色,则忽略
if(color[count-1] == 0x00efaa5a || color[count-1] == 0x00f7c384)
color[count-1] = 0x000000;
}
return color;
}

//下边的函数获取每个格子的特征点的数据:
//在这里我们只取六个特征点进行存储,把六个特征点的十六进制保存起来。
void CQQGameToolDlg::GetCode()
{
for(int i=1;i<=8;i++)
for(int j=1;j<=8;j++)
{
CString str;
COLORREF * c;
c = GetRectData(i,j);
str.Format("%x%x%x%x%x%c",c[25],c[26],c[27],c[28],c[29],c[30]);
data[i][j] = str;
}
}




//3)移动动物


void CQQGameToolDlg::DrawRect(int x, int y)
{
int xx,yy;
xx = (x-1)*48 + 10 + m_posX;
yy = (y-1)*48 + 10 + m_posY;
// ::Rectangle(hDc,xx,yy,xx + 10,yy + 10);//这里是画一个方块上去,注释掉了。
LPPOINT lpPoint = new CPoint();
lpPoint->x = xx;
lpPoint->y = yy;
::ClientToScreen(hWnd,lpPoint);
LPARAM lParam = MAKELPARAM(xx,yy);//鼠标点击的坐标
::SendMessage(hWnd,WM_LBUTTONDOWN,MK_LBUTTON,lParam);//发送鼠标DOWN的消息
::SendMessage(hWnd,WM_LBUTTONUP,MK_LBUTTON,lParam);//发送鼠标UP的消息
}

在网上下了一个外挂源程序调试一下!但有错误!
我是刚学用c++编有关于进程方面的程序!不知道是不是我的工程之类的建错了!希望高手告诉我详细的建工程的步骤!
还有我在vc++上调试有这样的错误:error C2143: syntax error : missing ';' before '*'
希望各位能够帮帮我!谢谢!
最后声明一下,这个程序还有那个找两个相同的方格的程序没完成!

[此贴子已经被作者于2007-9-10 23:12:41编辑过]

8 回复
#2
yh12007-09-09 23:21

大家帮帮忙哈!!谢谢

#3
foxtt1232007-09-10 23:21

大家帮帮忙吧!

#4
yh12007-09-11 21:47

顶!

#5
yh12007-09-14 21:47

[此贴子已经被作者于2007-9-14 21:48:01编辑过]

#6
anthony6342007-09-14 22:30

晕,VC2005的话新建工程就是新建项目,VC6忘记了。下载的代码应该带有工程文件的。

#7
yh12007-09-15 15:41

问题是我不是直接下载代码的!只是在网页上复制的!!
谢谢哈!

#8
yh12007-09-15 15:50

那还有那个错误是什么意思啊
应该怎么改正呢?

#9
s27608372007-09-15 16:43

晕,你别在C++教室发啊!去厉害点的地方发,这里大部分是新手

1