C/C++ 实现自动点击三方程序按钮控件方法!
2016-07-09 01:25
4587 查看
实现自动点击三方程序窗口按钮控件对于很多脚本(AutoIt、AutoHotKey、按键精灵等)来说极其容易,比方AutoIt,在获得目标窗口的标题或类名、按钮控件ID后,调用ControlClick函数即可实现自动点击目标窗口指定控件。而用C/C++如何实现这一操作呢?既然窗口程序是依赖事件驱动的,而Windows消息机制又是事件驱动的核心,那么我们可以尝试向目标窗口发送特定消息,以使目标程序作出预期响应,比方自动响应某一按钮事件方法。 现在开始介绍测试方法! 1. 测试对象是一个简单的对话框窗口。
2. 使用窗口信息工具捕获目标窗口及按钮信息。这里捕获的窗口标题为“测试”,按钮文本为“取消”,控件ID为“2”。
3. C++代码如下:
备注:
1. 该方法是逆向分析、测试得出的。使用脚本程序实现自动点击操作,同时使用spy++捕获目标窗口消息,分析、测试得出的,读者如感兴趣,也可自行测试。
2. 如有疑问,可加入懒人脚本(QQ群92959435),获取援助!
2. 使用窗口信息工具捕获目标窗口及按钮信息。这里捕获的窗口标题为“测试”,按钮文本为“取消”,控件ID为“2”。
3. C++代码如下:
HWND hWnd,hWnd2; hWnd = FindWindow(NULL, L"测试"); //获得目标窗口句柄 hWnd2 = FindWindowEx(hWnd, NULL, L"Button", L"取消"); //获得目标按钮句柄 if (hWnd2) PostMessage(hWnd, WM_COMMAND, (WPARAM) 0x00000002, (LPARAM) hWnd2);这里WPARAM参数传递的是控件ID,LPARAM参数传递的是控件句柄。
备注:
1. 该方法是逆向分析、测试得出的。使用脚本程序实现自动点击操作,同时使用spy++捕获目标窗口消息,分析、测试得出的,读者如感兴趣,也可自行测试。
2. 如有疑问,可加入懒人脚本(QQ群92959435),获取援助!
相关文章推荐
- 使用C++实现JNI接口需要注意的事项
- 关于指针的一些事情
- c++ primer 第五版 笔记前言
- share_ptr的几个注意点
- 过滤淘宝网弹出窗口
- IE:“自动完成”功能
- jQuery模仿单选按钮选中效果
- oracle em 按钮乱码解决办法及em网页变成英文
- css文本框与按钮美化效果代码
- 用CSS实现的一张图完成的按钮效果
- 三个不同文件停顿二秒弹出不同窗口的批处理
- Lua中调用C++函数示例
- Lua教程(一):在C++中嵌入Lua脚本
- Lua教程(二):C++和Lua相互传递数据示例
- css样式之区分input是按钮还是文本框的方法第1/4页
- C#中父窗口和子窗口之间控件互操作实例
- C++联合体转换成C#结构的实现方法
- 基于jQuery实现点击列表加载更多效果
- Android实现定制返回按钮动画效果的方法
- Android开发系列三之窗口的常用事件