聊聊取句柄与外挂吧。
经典的外挂总有特殊的启动方式。让我们走进这些经典,领略Loader背后的故事吧!
-------------------------------------------------------------------
1.先入为主
☆代表外挂:QQ堂终结者
这款软件的最大特色就是启动式Loader。.版本 2
.支持库 spec
.局部变量 启动信息数据, 启动信息数据
.局部变量 创建进程返回数据类型, 创建进程返回数据类型
通用对话框1.初始目录 = “C:\Documents and Settings\Administrator\桌面”
通用对话框1.打开 ()
编辑框5.内容 = 通用对话框1.文件名
延迟 (10)
创建进程 (编辑框5.内容, 0, 0, 0, 假, 0, 0, 0, 启动信息数据, 创建进程返回数据类型)
进程句柄 = 创建进程返回数据类型.hProcess
经典在于抢先创建线程直接获得句柄信息, 为后面做准备啦!
推荐指数:★★★☆
缺点:
某些软件Viso到检测启动父进程,非法就玩点不正当手段,这使得启动加载式Loader十分尴尬!
寻找窗口大法
☆代表外挂:QQ堂 版权所有盗版不究
直接按钮操作节省了用户时间,避免了不必要的麻烦.版本 2
.局部变量 handle, 整数型
.局部变量 ProcessId, 整数型
.局部变量 OpenHandle, 整数型
.局部变量 NumP, 整数型
handle = FindWindow (“QQTangWinClass”, “QQ堂 3.2 Beta1 Build10 ”)' 取QQT窗口句柄
.如果真 (handle = 0)' 判断句柄是否为0 也就是判断是否打开了游戏
信息框 (“未检测到游戏运行,请先运行游戏”, #信息图标, “注意”)' 提示
返回 ()
.如果真结束
GetWindowThreadProcessId (handle, ProcessId)' 根据上面取到的句柄 取进程ID
OpenHandle = OpenProcess (2035711, 假, ProcessId)' 打开进程
WriteProcessMemory (OpenHandle, 5313244, { 15, 133 }, 2, NumP)' 写入内存5313244 是 5112DC 的十进制 15 133 也是十进制 也就是 16进制的 0F 85
CloseHandle (OpenHandle)' 写完内存别忘了关闭句柄
按钮1.禁止 = 真
按钮2.禁止 = 假
经典在于为用户考虑很周到,开关你总认识这2个字吧!不认识也没关系,直接别玩挂了呗!
推荐指数:★★★
缺点:稍微变动下标题,实现动态类名这方法基本就废了- -。
模块-泛取法
代表外挂--Tale's Loader
代码参见Tale的内存补丁
使用API同上差不了太多,顾名思义,可以提供部分窗口名等实现动态定位,效果那是相当不错滴~
推荐指数:★★★
缺点:,同上。稍微变动下标题,实现动态类名这方法基本就废了- -。 直接取进程pid不就得了! 学习了.............. 真不懂.呵呵 又是易语言啊 写的很好又学到一招~ 努力学习中 我擦,经典,我也考虑写个QQTG看看 易语言写的东西吧,没学习过,膜拜 直接取进程pid不就得了
页:
[1]
2