熟悉PE结构的请进,如何取 .rdata 中的数据呢?

「已注销」 「已注销」 墨衍会员 · AI 创作全网分发 墨衍智能分发 通过墨衍一键同步至各平台 可同步平台 CSDN微信公众号微博知乎掘金百家号博客园抖音小红书 你的文章也可以这样分发 墨衍会员 ¥399起/年,写一次发全网 我也要 + 加入社区
按照网上资料,我现在按照PE结构自己读取资源节已经没有什么问题了——因为网上资料上对资源部分的结构描述的还算详细,所以按照原理总是可以写出来的。

而.rdata 段,貌似有全部变量和常量吧,这个却没找到资料描述是以什么样子的格式(或者说结构)存储的,那到底该怎么读取呢?
========================================

之所要读取这个段,原因是这样的:
找到一个第三方的程序,里面有一段字符串我想要修改,但是他不在资源节里,也就是这个字符串是属于汉化领域所谓的“非标资源”。
当然,我向简单修改的话,只需要使用二进制编辑器(如UE)查找数据并修改保存就可以了。
但是第一这个程序更新频繁,第二我的目的是想利用学到的PE结构知识写个通用的“内存”补丁,在程序启动时在内存中修改,免得每次都要查找修改(在其资源节中也有需要修改的地方,我已经写完了,证实可用)!

我用PE结构的方式遍历过这个程序的各个节并取出各自的二进制数据,发现我想要修改的数据就是在.rdata 段中。
当然,我知道这个段的属性是只读的,但是我发帖子问的不是“如何修改只读”的问题,这个我想修改段的属性可以解决吧(即使解决不了也没关系,我的目的是加深对PE结构的了解)

所以我的问题就是怎么用PE结构的方式读取到.rdata的数据(不是读入二进制在查找数据的方法哦,因为我要写内存补丁)。
请前辈们帮帮忙,其实最关键的只要有前辈能给出这部分的数据的存储结构就可以了,感激不尽!!!
...全文
评论 16
收藏 已收藏
分享
返回顶部
「已注销」
VC/MFC 16,550 成员 421,606 内容