海边沫沫

相濡以沫,不如相忘于江湖
posts - 9, comments - 113, trackbacks - 0, articles - 0
  C++博客 :: 首页 :: 新随笔 :: 联系 :: 聚合  :: 管理
不久前发表在首页的QQ美女找茬(外挂)学习笔记一文让我深受启发,我看了该文章后,也自己动手实现了一个外挂,效果挺不错的。请看截图:


从图中可以看出,我没有让结果显示在原游戏窗口中,而是显示在了外挂窗口中。这么做是为了实现起来简单。我的实现的确是很简单的:先通过向导创建一个SDI项目,再在工具栏上添加一个按钮,再为该按钮添加事件处理程序即可,所有的代码都在这个事件处理程序中。另外,要感谢MFC为我们提供的CDC类、CBitmap类以及ATL提供的CImage类。代码很简单,简单得我都懒得解释了:
void CI_Love_BeautyView::OnFind()
{
    
//游戏中图片的位置及大小
    int nPicWidth = 498-1;  
    
int nPicHeight = 448;
    
int nOffsetLeftPicX = 8;
    
int nOffsetLeftPicY = 193;
    
int nOffsetRightPicX = 516 + 1;
    
int nOffsetRightPicY = 193;

    
//获取游戏窗口指针
    CWnd* pGame = FindWindow(NULL, _T("大家来找茬"));    
    
//将游戏数据复制到两个CBitmap对象中
    CDC *pSrcDC=pGame->GetDC(); 
    CDC memDC;    
    memDC.CreateCompatibleDC(pSrcDC);
    CBitmap bitmap_left;
    bitmap_left.CreateCompatibleBitmap(pSrcDC,nPicWidth,nPicHeight); 
    CBitmap bitmap_right;
    bitmap_right.CreateCompatibleBitmap(pSrcDC,nPicWidth,nPicHeight);
    
//获取左边的图片
    CBitmap* pOldBitmap = memDC.SelectObject(&bitmap_left);      
    memDC.BitBlt(
0,0,nPicWidth,nPicHeight,pSrcDC,nOffsetLeftPicX,nOffsetLeftPicY,SRCCOPY);
    
//获取右边的图片
    memDC.SelectObject(&bitmap_right);      
    memDC.BitBlt(
0,0,nPicWidth,nPicHeight,pSrcDC,nOffsetRightPicX,nOffsetRightPicY,SRCCOPY);
    memDC.SelectObject(pOldBitmap);
    
//创建两个CImage对象,然后逐像素比较
    CImage image_left;
    CImage image_right;
    image_left.Attach(bitmap_left);
    image_right.Attach(bitmap_right);
    
    
for(int i=0; i<nPicWidth;i++){
        
for(int j=0; j<nPicHeight; j++){
            
if(image_left.GetPixel(i,j) != image_right.GetPixel(i,j)){
                image_left.SetPixel(i,j,RGB(
255,0,0));
            }
        }
    }
    
//显示结果
    CClientDC dc(this);
    image_left.BitBlt(dc,
0,0);
}

Feedback

# re: 也谈QQ美女找茬外挂的编写  回复  更多评论   

2010-11-30 00:30 by ArthasLee
前来学习!

# re: 也谈QQ美女找茬外挂的编写  回复  更多评论   

2010-11-30 11:24 by 鑫缘蚕丝被
不错,收藏了,谢谢

# re: 也谈QQ美女找茬外挂的编写  回复  更多评论   

2010-11-30 14:32 by 无锡到北京专线
这东西有意思

# re: 也谈QQ美女找茬外挂的编写  回复  更多评论   

2010-11-30 16:23 by 柳铱
收藏

# re: 也谈QQ美女找茬外挂的编写  回复  更多评论   

2011-03-22 23:19 by coreBugZJ
看到你的回复,特来学习
赞。。

# re: 也谈QQ美女找茬外挂的编写  回复  更多评论   

2011-11-03 14:38 by 土豆
youxia啊,联系不上你?QQ多少啊.我有问题想请教你.你以前写springSide的例子还在么.麻烦能不能给我发份.li_zhuangs@163.com.方便的话传下.谢谢了.我正在研究这个.网上找了很多,就你写的最好了!可惜没有源码给我看!!!

只有注册用户登录后才能发表评论。
网站导航: 博客园   IT新闻   BlogJava   博问   Chat2DB   管理