今天心情:捡了个闲暇。

前几天工作出了个漏洞,电话会议时候怎么都是忽大忽小的声音,实在没听清电话会议的内容,完了依据想象交了一个设计方案,之后便是赋闲。

进入正题,美女找茬实现不难,没有设计上的难度,找到API即可,API的顺序如下:

1.对话框的透明、置顶、穿透属性实现。

-----自然得洋气一点,那种半透明的、不小心点了鼠标就把游戏窗口的焦点整没的一定不能要。

2.查找QQ游戏窗口的名称以及获得句柄。

-----SPY++获得窗口名称,FindWindow获得指定名称窗口的句柄。

3.移动对话框将之覆盖到美女找茬左侧或者右侧的图片上

-----MoveWindow,移动窗口并改变大小,最后一个参数指定是否重绘窗口

4.依据QQ游戏窗口句柄获得指定位置的像素

-----Handle初始化DC,依据DC的GetPixel方法获得指定像素点的颜色。

5.透明对话框上绘制不透明的像素点

-----犯难很久才搞定,窗口属性指定透明颜色、设置窗口背景为透明色、绘制时采用不透明色进行绘制。

6.定义全局快捷键

-----对话框又透明又穿透的,鼠标已经奈何不了它了,来全局快捷键吧

以下仅给出相应的API调用样例,有兴趣的朋友自行组装,不想动手做只想哄女朋友的同学抱歉啦。

窗口透明以及鼠标穿透的API: SetWindowLong(GetSafeHwnd(), GWL_EXSTYLE,

            GetWindowLong(GetSafeHwnd(), GWL_EXSTYLE) | 
            WS_EX_TRANSPARENT | //鼠标穿透
            WS_EX_LAYERED        //图层窗口
            );

指定RGB(255,255,255)色为透明色的API:SetLayeredWindowAttributes(#ffffff,100, LWA_COLORKEY);

----此API搭配背景色填充可实现对话框透明:dc->FillSolidRect(currect, #ffffff);

对话框个性化的API:ModifyStyle( WS_CAPTION, WS_MINIMIZEBOX, SWP_DRAWFRAME );

----可以去掉标题、边框、最大最小按钮。

移动并改变窗口大小的API:MoveWindow(100, 300, 500, 500, TRUE);

-----前四个参数分别对应x、y、width、height

窗口名称获得通过SPY++,这个工具很简单,打开界面就会用了。

窗口获取句柄API以及依据句柄获取DC和指定像素点的色彩值的API:

CWnd* wnd = NULL;

wnd = FindWindow(NULL, _T("QQ游戏-美女找茬"));

CPaintDC dc(wnd);

dc.GetPixel(100, 100);

对话框上绘制像素点,可以用setpixel实现,也可以用fillrect实现,API:CBrush b(#ff0000); dc->FillRect(currect, &b);

定义全局快捷的相关API:

-----这是典型的回调函数,普通函数需要声明与定义,回调函数还需要注册与关联。

声明:afx_msg long OnHotKey(WPARAM wparam, LPARAM lparam);

定义:long CbellecompDlg::OnHotKey(WPARAM lparam, LPARAM wparam)

{
if(lparam == 199)
{
AfxMessageBox(_T("global hotkey  a"));
return 0;
}
else if(lparam == 120)
{
AfxMessageBox(_T("global hotkey b"));
return 0;
}
return 0;

}

注册:RegisterHotKey(GetSafeHwnd(), 199, MOD_CONTROL, 'A');
RegisterHotKey(GetSafeHwnd(), 120, MOD_CONTROL, 'B');

关联消息:ON_MESSAGE(WM_HOTKEY, OnHotKey)

啊,程序员玩游戏真是无聊呀。

MFC版美女找茬的更多相关文章

  1. 2014中秋节,用java为QQ游戏美女找茬写辅助

    引子        今年中秋闲在家,总要找点事做.        前几天开始学python,很早之前就有计划拿下这门语言了,可惜一直拖到现在……不可否认,我也是个拖沓症患者.在学习python的过程中 ...

  2. opencv做的美女找茬程序~

    // CMP.cpp : 定义控制台应用程序的入口点. // #include "stdafx.h" #include <cv.h> #include <high ...

  3. 对"QQGame-大家来找茬"的辅助工具的改进

    [前言]最近在博客园首页上看到有“大家来找茬”这个游戏(此游戏为找出两个相近图片的不同点)外挂的相关帖子,所以这里我也翻看了我之前(2009年5月)的写的一个简单的辅助程序(采用 VC6 开发的).我 ...

  4. 用Python实现QQ找茬游戏外挂工具

    源地址:http://cpiz.net/blog/2012/03/a_qq_zhaocha_assistant_by_python/ (原创作品,转载请注明出处)好久没写技术相关的博文,这次写篇有意思 ...

  5. 【QT】找茬外挂制作

    找茬外挂制作 找茬游戏大家肯定都很熟悉吧,两张类似的图片,找里面的不同.在下眼神不大好,经常瞪图片半天也找不到区别.于是乎决定做个辅助工具来解放一下自己的双眼. 一.使用工具 Qt:主要是用来做界面的 ...

  6. 社交系统/社群系统“ThinkSNS+”H5及PC端终于来了!一起来“找茬”

    [什么是TS+?] ThinkSNS(简称TS),一款全平台综合性社交系统,为国内外大中小企业和创业者提供社会化软件研发及技术解决方案,目前最新版本为ThinkSNS+,简称TS+. 还记得2017年 ...

  7. 大家一起来找茬(BUG)

    大家一起来找茬(BUG) ----------目录---------- 一.上手体验 1.主界面 2.功能 二.程序的 BUG 三.必应词典的 BUG 1."每日一句"里的句子不能 ...

  8. C#外挂QQ找茬辅助源码,早期开发

    这是一款几年前开发的工具,当年作为一民IT纯屌,为了当年自己心目中的一位女神熬夜开发完成.女神使用后找茬等级瞬间从眼明手快升级为三只眼...每次看到这个就会想起那段屌丝与女神的回忆.今天特地把代码更新 ...

  9. 比较不错的一个ios找茬游戏源码

    找茬游戏源码 ,这个是一款非常不错的ios找茬游戏源码,该游戏的兼容性非常好的,并且还可以支持ipad和iphone,UI界面设计得也很漂亮,游戏源码真的是一款非常完美,而且又很完整的一款休闲类的游戏 ...

随机推荐

  1. c# 可访问性级别

    使用访问修饰符 public.protected.internal 或 private 可以为成员指定以下声明的访问级别之一.   声明的可访问性 含义 public 访问不受限制. protecte ...

  2. 117. Populating Next Right Pointers in Each Node II

    题目: Follow up for problem "Populating Next Right Pointers in Each Node". What if the given ...

  3. CentOS系统内核升级

    yum -y update 升级所有包,改变软件设置和系统设置,系统版本内核都升级 yum -y upgrade 升级所有包,不改变软件设置和系统设置,系统版本升级,内核不改变

  4. Android 设置EditText光标位置

    Android中有很多可编辑的弹出框,其中有些是让我们来修改其中的字符,这时光标位置定位在哪里呢? 刚刚解了一个bug是关于这个光标的位置的,似乎Android原生中这种情况是把光标定位到字符串的最前 ...

  5. FastScroll(2)不分组的listview 打开fastscroll的分组提示功能

    本文只让fastscroll具有提示分组功能,但listview并不显示分组,如果想让分组的listview显示fastscroll,看下篇. 1,在listview中打开fastscroll 2,自 ...

  6. C++ 类的内存分布

    C++类内存分布 转自:http://www.cnblogs.com/jerry19880126/p/3616999.html   先写下总结,通过总结下面的例子,你就会明白总结了. 下面总结一下: ...

  7. poj 2109 Power of Cryptography (double 精度)

    题目:http://poj.org/problem?id=2109 题意:求一个整数k,使得k满足kn=p. 思路:exp()用来计算以e为底的x次方值,即ex值,然后将结果返回.log是自然对数,就 ...

  8. Innodb的启动

    Innodb的启动与关闭 1. 启动函数的流程 innobase_start_or_create_for_mysql 启动的主要步骤包括: 1. 初始化innodb的参数 2. 初始化系统结构 主要结 ...

  9. bzoj4511: [Usaco2016 Jan]Subsequences Summing to Sevens

    前缀和. 设f[i]为前缀和%7=i的第一个点.那么答案就是max(i-f[s[i]%7])了. #include<cstdio> #include<algorithm> #i ...

  10. Office启动加载vs。。。项

    PowerPoint: 选项->加载项->Chinese Translation Addin->管理[COM加载项]转到->取消Chinese Translation Addi ...