开启辅助访问 切换到宽版

精易论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

用微信号发送消息登录论坛

新人指南 邀请好友注册 - 我关注人的新帖 教你赚取精币 - 每日签到


求职/招聘- 论坛接单- 开发者大厅

论坛版规 总版规 - 建议/投诉 - 应聘版主 - 精华帖总集 积分说明 - 禁言标准 - 有奖举报

查看: 8391|回复: 96
收起左侧

[其它] 关于TR模块内存搜索参数明细

[复制链接]
结帖率:60% (3/5)
发表于 2023-9-28 04:48:20 | 显示全部楼层 |阅读模式   广西壮族自治区柳州市
这几天总有人QQ私我,说我写的模块老搜不到数据,经过排杳以后基本上都是参数错误造成
有的人把搜范围设在数据所在范围以外,设10进制 1000000-100000000 而CE上面搜出来地址 0xA013F56C=10 进制2685662572
还有第一个参数明明是进程ID,还有人给传个进程句柄的.......
先来看一下函数参数定义
QQ截图20230928023715.jpg
QQ截图20230928023920.jpg
这两个基本上是一样的
参数1,2,3,4,5 应该不用多说,看不懂的真不适合玩内存
具体说说后面两个参数
6 区域属性

QQ截图20230928020258.jpg
对应上面红色方框内的,可写,可执行,的钩选项,可写=常量PAGE_READWRITE对应数值4  可执行=常量PAGE_READWRITE对应数值32
还有一个写入时复制这个一般用不到,这些标志都是2进制位表标,4=100  32=100000 32+4 = 34 = 100100 那么程序内部遇到属性第3位为1或第6位为1的内存区域都会进行搜索,其它区不搜,达到过虑的效果,可执行代码区还有一个PAGE_EXECUTE_READWRITE对应数值64  2进制 1000000 就是平时内存CALL写入机器码的地方Virtualalloc申请来的,线程堆好像也是这个。CE上这个区域的数据好像是搜不到的。
原来的  搜索特征码  参数6默认为 32+64 只搜索可执行区域,很多人用默认值在模拟器中搜特征码搜不到,是因为那个特征码不在可执行区而是在PAGE_READWRITE=4 这里,因为PAGE_READWRITE这样的区域在进程里特别多,很影响速度,而我认为的特征码,一般是可执行代码就没加上这个。最近2天问的人多了,只好加上这个。默认为 4+32+64=1100100
第3位,第6位,第7位为1的区域 都会搜,如果你知道数据所在的精确区域可以指定,以提升速度

参数7 地址对齐
就上图红色方框内快速扫描 1对齐。1对齐最后出来的16进制地址结尾 0123456789ABCDEF 通吃,如果设2的话地址结尾只能是 02468ACE其它的都不符合条件,那怕数据存在也会跳过。
如果设4,结尾只能048C,设8,结尾只能08,设16结尾只能0,其它地址不符合条件就跳过,这样可以提升很多速度(但也可能会错过数据,请甚用)。
看看上图出来的地址结尾都8,那么就可以设8,
QQ截图20230928020726.jpg
上面1,扫出来这三地址个要2秒左右,这样一设,扫出来不到1秒。
再看看,模块的扫描速度,
QQ截图20230928020759.jpg
1.6秒,如果是用1对齐的话,是3.6秒(CE 2秒左右),差不多是CE的两倍,不知道怎么回事,图传不上来。速度还是比不上CE,不过也算可以了吧。
这个进程内存占用可是3.5G,(一些小进程,基本上瞬间出结果)
QQ截图20230928020219.jpg
说到这应该差不多了,附上更新的模块+源码
模块.rar (120.37 KB, 下载次数: 348)

评分

参与人数 2好评 +1 精币 +4 收起 理由
1355301564 + 2 YYDS~!
神话gg + 1 + 2 厉害了,太需要这个了,谢谢哥

查看全部评分


本帖被以下淘专辑推荐:

结帖率:60% (3/5)

签到天数: 22 天

 楼主| 发表于 2024-1-28 18:34:04 | 显示全部楼层   广西壮族自治区柳州市
20240128 修复AMD处理器异常
模块.rar (755.74 KB, 下载次数: 234)
回复 支持 1 反对 0

使用道具 举报

发表于 2024-10-23 19:47:32 | 显示全部楼层   江苏省泰州市
在那里有最新的
回复 支持 反对

使用道具 举报

发表于 2024-10-20 21:19:35 | 显示全部楼层   广东省深圳市
很好很不错
回复 支持 反对

使用道具 举报

结帖率:75% (30/40)

签到天数: 6 天

发表于 2024-10-20 20:52:57 | 显示全部楼层   湖南省衡阳市
看看大佬操作
回复 支持 反对

使用道具 举报

结帖率:0% (0/1)

签到天数: 11 天

发表于 2024-9-28 13:16:32 | 显示全部楼层   广东省湛江市
dnxl 发表于 2024-9-28 11:42
23年以后的发的应该没有这个函数了吧,前面的它确实有点问题,自己改一下戓用别的替代都行 ...

这样,那我有空再试试吧
回复 支持 反对

使用道具 举报

结帖率:60% (3/5)

签到天数: 22 天

 楼主| 发表于 2024-9-28 11:42:01 | 显示全部楼层   广西壮族自治区柳州市
ckyun 发表于 2024-9-28 10:36
为什么在易语言直接运行就可以,但是静态编译出来,然后搜索结束就闪退?测试了一下,用这个指令 ...

23年以后的发的应该没有这个函数了吧,前面的它确实有点问题,自己改一下戓用别的替代都行
回复 支持 反对

使用道具 举报

结帖率:0% (0/1)

签到天数: 11 天

发表于 2024-9-28 10:36:40 | 显示全部楼层   广东省湛江市
本帖最后由 ckyun 于 2024-9-28 11:02 编辑

为什么在易语言直接运行就可以,但是静态编译出来,然后搜索结束就闪退?测试了一下,用这个指令:TR_Hex (, ) 会闪退,
用精易模块这个指令:进制_十到十六 ()就不会闪退

回复 支持 反对

使用道具 举报

结帖率:0% (0/2)

签到天数: 5 天

发表于 2024-8-19 00:33:06 | 显示全部楼层   辽宁省大连市
用大佬的模块,没搜索成功过.可能太菜..然后还下载了4个版本.啊呀..8个币
回复 支持 反对

使用道具 举报

结帖率:67% (2/3)

签到天数: 4 天

发表于 2024-8-18 10:46:29 | 显示全部楼层   上海市上海市
dnxl 发表于 2024-8-12 22:21
最后面那个参数不是一直可空?默认就是4。
再说源码也在,如果是我忘记,自己改一下再编译不就行了。 ...

怎么改不会哎
回复 支持 反对

使用道具 举报

结帖率:67% (2/3)

签到天数: 4 天

发表于 2024-8-18 10:45:23 | 显示全部楼层   上海市上海市
dnxl 发表于 2024-8-12 22:21
最后面那个参数不是一直可空?默认就是4。
再说源码也在,如果是我忘记,自己改一下再编译不就行了。 ...

就是想要这个效果,空的话默认为4字节这样子。现在是空了会提示  错误(10042): 调用子程序“XXX”时所传递的参数太少。
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则 致发广告者

发布主题 收藏帖子 返回列表

sitemap| 易语言源码| 易语言教程| 易语言论坛| 易语言模块| 手机版| 广告投放| 精易论坛
拒绝任何人以任何形式在本论坛发表与中华人民共和国法律相抵触的言论,本站内容均为会员发表,并不代表精易立场!
论坛帖子内容仅用于技术交流学习和研究的目的,严禁用于非法目的,否则造成一切后果自负!如帖子内容侵害到你的权益,请联系我们!
防范网络诈骗,远离网络犯罪 违法和不良信息举报电话0663-3422125,QQ: 793400750,邮箱:wp@125.la
Powered by Discuz! X3.4 揭阳市揭东区精易科技有限公司 ( 粤ICP备12094385号-1) 粤公网安备 44522102000125 增值电信业务经营许可证 粤B2-20192173

快速回复 返回顶部 返回列表