当前位置:首页 > 程序设计 > 易语言程序设计 > 游戏辅助 > 详细内容
SPY++ 结合易语言简单应用02010108-01代码优化源码
作者:潇潇  发布时间:2009-12-5  阅读次数:3258  字体大小: 【】 【】【

教学课题:SPY++ 结合易语言简单应用之代码优化
教学要点:易语言编程坏境,以计算器为例模拟鼠标输入QQ号:854487915
教学步骤:1、简化“查找窗口_”函数
                               2、简化“模拟鼠标操作_”函数
教学源码:
窗口程序集1:

.版本 2

.程序集 窗口程序集1

.子程序 _按钮1_被单击
.局部变量 窗口坐标结构, 矩形坐标结构
.局部变量 窗口句柄, 整数型

窗口句柄 = 标取句柄 (, “计算器”)   ' 取计算器窗口句柄
编辑框1.内容 = 到文本 (窗口句柄)   ' 显示窗口句柄
.如果 (窗口句柄 ≠ 0)
       取窗口矩形坐标 (窗口句柄, 窗口坐标结构)   ' 取计算器矩形坐标

       ' 按下数字8
       置鼠标坐标 (350 + 窗口坐标结构.左边, 150 + 窗口坐标结构.顶边)
       鼠标左键按下 (350 + 窗口坐标结构.左边, 150 + 窗口坐标结构.顶边)
       延时 (500)
       模拟鼠标操作_ (#MOUSEEVENTF_LEFTUP, 350 + 窗口坐标结构.左边, 150 + 窗口坐标结构.顶边, 0, 0)

       ' 按下数字5
       置鼠标坐标 (350 + 窗口坐标结构.左边, 180 + 窗口坐标结构.顶边)
       模拟鼠标操作_ (#MOUSEEVENTF_LEFTDOWN, 350 + 窗口坐标结构.左边, 180 + 窗口坐标结构.顶边, 0, 0)
       延时 (500)
       模拟鼠标操作_ (#MOUSEEVENTF_LEFTUP, 350 + 窗口坐标结构.左边, 180 + 窗口坐标结构.顶边, 0, 0)

       ' 按下数字4
       置鼠标坐标 (308 + 窗口坐标结构.左边, 180 + 窗口坐标结构.顶边)
       模拟鼠标操作_ (#MOUSEEVENTF_LEFTDOWN, 308 + 窗口坐标结构.左边, 180 + 窗口坐标结构.顶边, 0, 0)
       延时 (500)
       模拟鼠标操作_ (#MOUSEEVENTF_LEFTUP, 308 + 窗口坐标结构.左边, 180 + 窗口坐标结构.顶边, 0, 0)

       ' 按下数字4
       置鼠标坐标 (308 + 窗口坐标结构.左边, 180 + 窗口坐标结构.顶边)
       模拟鼠标操作_ (#MOUSEEVENTF_LEFTDOWN, 308 + 窗口坐标结构.左边, 180 + 窗口坐标结构.顶边, 0, 0)
       延时 (500)
       模拟鼠标操作_ (#MOUSEEVENTF_LEFTUP, 308 + 窗口坐标结构.左边, 180 + 窗口坐标结构.顶边, 0, 0)

       ' 按下数字8
       置鼠标坐标 (350 + 窗口坐标结构.左边, 150 + 窗口坐标结构.顶边)
       模拟鼠标操作_ (#MOUSEEVENTF_LEFTDOWN, 350 + 窗口坐标结构.左边, 150 + 窗口坐标结构.顶边, 0, 0)
       延时 (500)
       模拟鼠标操作_ (#MOUSEEVENTF_LEFTUP, 350 + 窗口坐标结构.左边, 150 + 窗口坐标结构.顶边, 0, 0)

       ' 按下数字7
       置鼠标坐标 (306 + 窗口坐标结构.左边, 150 + 窗口坐标结构.顶边)
       模拟鼠标操作_ (#MOUSEEVENTF_LEFTDOWN, 306 + 窗口坐标结构.左边, 150 + 窗口坐标结构.顶边, 0, 0)
       延时 (500)
       模拟鼠标操作_ (#MOUSEEVENTF_LEFTUP, 306 + 窗口坐标结构.左边, 150 + 窗口坐标结构.顶边, 0, 0)

       ' 按下数字9
       置鼠标坐标 (387 + 窗口坐标结构.左边, 150 + 窗口坐标结构.顶边)
       模拟鼠标操作_ (#MOUSEEVENTF_LEFTDOWN, 387 + 窗口坐标结构.左边, 150 + 窗口坐标结构.顶边, 0, 0)
       延时 (500)
       模拟鼠标操作_ (#MOUSEEVENTF_LEFTUP, 387 + 窗口坐标结构.左边, 150 + 窗口坐标结构.顶边, 0, 0)

       ' 按下数字1
       置鼠标坐标 (308 + 窗口坐标结构.左边, 210 + 窗口坐标结构.顶边)
       模拟鼠标操作_ (#MOUSEEVENTF_LEFTDOWN, 308 + 窗口坐标结构.左边, 210 + 窗口坐标结构.顶边, 0, 0)
       延时 (500)
       模拟鼠标操作_ (#MOUSEEVENTF_LEFTUP, 308 + 窗口坐标结构.左边, 210 + 窗口坐标结构.顶边, 0, 0)

       ' 按下数字5
       置鼠标坐标 (350 + 窗口坐标结构.左边, 180 + 窗口坐标结构.顶边)
       模拟鼠标操作_ (#MOUSEEVENTF_LEFTDOWN, 350 + 窗口坐标结构.左边, 180 + 窗口坐标结构.顶边, 0, 0)
       延时 (500)
       模拟鼠标操作_ (#MOUSEEVENTF_LEFTUP, 350 + 窗口坐标结构.左边, 180 + 窗口坐标结构.顶边, 0, 0)

.否则

.如果结束

DLL命令定义表:

.版本 2

.DLL命令 查找窗口_, 整数型, "user32", "FindWindowA"
       .参数 窗口类名, 文本型
       .参数 窗口标题, 文本型

.DLL命令 置鼠标坐标, 整数型, "user32", "SetCursorPos"
       .参数 鼠标坐标X, 整数型
       .参数 鼠标坐标Y, 整数型

.DLL命令 取窗口矩形坐标, 整数型, "user32", "GetWindowRect"
       .参数 窗口句柄, 整数型
       .参数 坐标结构, 矩形坐标结构

.DLL命令 模拟鼠标操作_, , "user32", "mouse_event"
       .参数 操作标志, 整数型
       .参数 目的坐标x, 整数型
       .参数 目的坐标y, 整数型
       .参数 数据信息, 整数型, , cButtons
       .参数 扩展数据信息, 整数型, , dwExtraInfo


程序集——API简化:

.版本 2

.程序集 API简化

.子程序 类取句柄, 整数型, , 以窗口类名取窗口句柄
.参数 窗口类名, 文本型
.参数 窗口标题, 文本型, 可空
.局部变量 句柄, 整数型

' 句柄 = 查找窗口_ (窗口类名, 窗口标题)
' 返回 (句柄)
返回 (查找窗口_ (窗口类名, 窗口标题))

.子程序 标取句柄, 整数型, , 以窗口标题取窗口句柄
.参数 窗口类名, 文本型, 可空
.参数 窗口标题, 文本型

返回 (查找窗口_ (窗口类名, 窗口标题))

.子程序 鼠标左键按下
.局部变量 x, 整数型
.局部变量 y, 整数型

模拟鼠标操作_ (#MOUSEEVENTF_LEFTDOWN, x, y, 0, 0)

自定义数据类型表:

.版本 2

.数据类型 矩形坐标结构, , RECT
       .成员 左边, 整数型
       .成员 顶边, 整数型
       .成员 右边, 整数型
       .成员 底边, 整数型


常量数据表:

.版本 2

.常量 MOUSEEVENTF_LEFTDOWN, "2"
.常量 MOUSEEVENTF_LEFTUP, "4"

来源:潇潇的编程网站
我要评论
  • 匿名发表
  • [添加到收藏夹]
  • 发表评论:(匿名发表无需登录,已登录用户可直接发表。) 登录状态:未登录
最新评论
所有评论[0]
    暂无已审核评论!
Web Lite SWeTE: Simple Website Translation Engine
 


设为首页 | 加入收藏 | 意见建议 | 友情链接 | 版权声明 | 管理登陆 | 编程论坛 | 给我留言

声明:本网站部分稿件来源的所有文字、图片和音视频稿件,来自互联网,若侵犯您的权利,请来信告知,我们将在第一时间内删除!


Copyright 2009-2015 redrose ( wgbcw.cn ) All rights reserved ICP备案编号:滇ICP备09007156号 Dict.cn


点击这里给我发消息
点击这里给我发消息
安全联盟站长平台