如何将PE映像中的所有虚拟地址(VA)映射到相对VA

时间:2014-03-18 16:20:08

标签: c++ windows winapi virtual-address-space relocation

我想使用Win32 C ++ API将模块的图像(加载到进程的内存中)读入缓冲区。在阅读之后,我想将所有VAs从缓冲区更改为RVAs。

我在MSDN上找到了ImageRvaToVa函数,但是,我需要反向映射,即ImageVaToRva,我需要将它应用于给定图像内的所有VAs。但是,我找不到这样的功能或类似的东西。 Win32中是否存在这样的函数?

实现我想要的一种方法是解析图像的.reloc部分。但是,我没有找到任何直接的方法来做到这一点。是否有任何Win32 API函数可以轻松解析.reloc部分?

对于解决这个问题的方法的任何其他建议将不胜感激。

0 个答案:

没有答案