【发布时间】:2011-05-23 18:37:21
【问题描述】:
Microsoft's documentation 用于 PE 可选标头标准字段(第 25.2.3.1 节)中的“入口点 RVA”字段,说明该字段应为:
入口点的 RVA,需要指向字节 0xFF 0x25,后跟 RVA 在标记为 EXE 的执行/读取或 DLL 的 0 的部分中
这是什么意思?我检查了一个由 c# 编译器生成的 PE 文件,发现一个 RVA 指向所描述的字节 0xFF 0x25,但接下来的四个字节是 0x00402000,超出了相对虚拟内存的范围,不是我知道的有效 RVA .我知道有一个重定位(第 25.3.2 节)指向这个类型为“IMAGE_REL_BASED_HIGHLOW”的值,但我也不知道这意味着什么。我也知道它应该调用第 25.3.1 节中描述的 mscoree.dll 的“_CorExeMain”(我正在使用可执行文件),但我不明白如何。
【问题讨论】: