首页
论坛
课程
招聘
添加.rsrc节数据
桃木剑 2023-3-17 161

咨询个技术问题,功能目的是从一个pe文件获取rsrc节数据,然后把这个获取到的数据添加到一个没有rsrc节的pe文件里,我是这样修改的,首先从有rsrc节的pe文件里获取.rsrc节的数据和rsrc节头的VirtualSize,然后在没有rsrc节的pe文件添加一个rsrc节头和在rsrc节头中指定的磁盘位置写入rsrc数据,其他节头的磁盘位置的信息和VirtualAddress都重新计算无误,OptionalHeader header中的IMAGE_DATA_DIRECTORY_ARRAY DataDirArray数组也重新计算了,遇到一个问题只有当新增的rsrc节头中的VirtualAddress和原本就有rsrc节头的pe文件中的rsrc节头中的VirtualAddress保持一样,才能在文件的属性中查看到版本信息和图标信息等信息,这是什么原因导致的啊?

收藏
1条回答
凨少 6天前

pe文件中新增的rsrc节头的VirtualAddress需要与原rsrc节头在pe文件中的VirtualAddress相同的原因是windows操作系统使用rsrc节头虚拟地址来定位资源数据。如果 VirtualAddress 不同,操作系统将无法定位资源数据,版本信息和图标信息将不会显示在文件属性中。

回复