zhoujinliang 发表于 2012-9-18 13:20:19

高手进来!指点下

本帖最后由 zhoujinliang 于 2012-9-21 23:25 编辑

我用易语言写的一个丝路辅助,现在有两个问题,

.版本 2

.程序集 启动窗口程序集

.子程序 __启动窗口_创建完毕

' 加载易皮肤 (10)' 9 10 27 28 30 31
句柄 = 窗口取句柄 (“sro_client.exe”, , )' 从窗口取得游戏的句柄
进程 = 窗口取进程ID (句柄)' 读取游戏进程
人物基址 = 内存读整数 (进程, 16170180, )' 16170180是16进制011d68f4转换得来是怪物的基址00F6BCC4
名字 = 内存读字节集 (进程, 人物基址 + 276, 30)' 276是16进制114转换得来,30为名字长度
_启动窗口.标题 = 转换Unicode转Ansi (名字)' 转换名字字符


1,我先开的游戏,再开辅助,这时候辅助能读取游戏的HPMP等信息;当游戏掉线在上线时辅助就不能读取游戏的HPMP等信息。(万能模块1.7)
2,我用彗星托盘图标模块,让辅助窗口置托盘图标,当我关闭辅助时图标还在,用鼠标点下就消失了。好像有托盘图标有缓存一样,不点击一直显示。
以上问题请高手进来帮我解决下!谢谢了!

474103476 发表于 2012-9-18 16:12:56

第一个问题,请问你的基址找到了吗

zhoujinliang 发表于 2012-9-18 17:29:54

基址找到了,关键是如果游戏掉线了再重新上线,这时候辅助就不能读取游戏的HPMP等信息,要重新打开辅助才能读取游戏的HPMP等信息!

wosch2 发表于 2012-9-18 22:31:48

{:1_99:}正常    因为游戏的 进程句柄 改变了所以读 不到 数据

474103476 发表于 2012-9-18 22:48:19

唉。加个时钟吧,让挂,重复读取句柄这些

eggfun 发表于 2012-9-18 22:49:04

在你辅助的时钟里加一句,如果句柄等于0,就取一次句柄,这样就解决了😏,不过仅限于开一个号😄

zhoujinliang 发表于 2012-9-19 13:10:58

有没有其他的方法??
给个例子!
第二个问题怎么解决啊??

zhoujinliang 发表于 2012-10-5 16:32:57

eggfun 发表于 2012-9-18 22:49 static/image/common/back.gif
在你辅助的时钟里加一句,如果句柄等于0,就取一次句柄,这样就解决了😏,不过仅限于开一个号&#1285 ...

怎么还是取不到呢???

syfo9 发表于 2012-10-7 11:36:05

问题在这里啊:“子程序 __启动窗口_创建完毕”
掉线重新启动后,你的程序窗口是已经启动了的,所以即使你读了新的进程和句柄,因为没有重新运行上面的子程序,所以读不到HP,MP的信息。所以在辅助的时钟加了如果新取的进程ID不等于原进程ID,则运行:“子程序 __启动窗口_创建完毕”
就可以了。

zhoujinliang 发表于 2012-10-7 13:20:30

syfo9 发表于 2012-10-7 11:36 static/image/common/back.gif
问题在这里啊:“子程序 __启动窗口_创建完毕”
掉线重新启动后,你的程序窗口是已经启动了的,所以即使你 ...

高手!谢谢指点!本人太菜!能否给个例子呢??

syfo9 发表于 2012-10-7 22:07:04

zhoujinliang 发表于 2012-10-7 13:20 static/image/common/back.gif
高手!谢谢指点!本人太菜!能否给个例子呢??

发个例子给你,多开的话自己琢磨吧,不难的!模块是很普通的,你应该有的。

syfo9 发表于 2012-10-7 22:09:36

这个是,丝路R的,老丝路的就换个基址就可以了

zhoujinliang 发表于 2012-10-7 23:43:21

syfo9 发表于 2012-10-7 22:07 static/image/common/back.gif
发个例子给你,多开的话自己琢磨吧,不难的!模块是很普通的,你应该有的。

谢谢高手指点迷津!!!
页: [1]
查看完整版本: 高手进来!指点下