gpt4 book ai didi

.net - .Net PE 文件中的入口点 RVA 是什么?

转载 作者:行者123 更新时间:2023-12-02 04:09:12 28 4
gpt4 key购买 nike

Microsoft's documentation对于 PE 可选 header 标准字段(第 25.2.3.1 节)中的“入口点 RVA”字段,该字段应为:

RVA of entry point, needs to point to bytes 0xFF 0x25 followed by the RVA in a section marked execute/read for EXEs or 0 for DLLs



这是什么意思?我检查了一个由 c# 编译器生成的 PE 文件,发现一个 RVA 指向所描述的字节 0xFF 0x25,但接下来的四个字节是 0x00402000,超出了相对虚拟内存的范围,不是一个有效的 RVA,因为我可以告诉.我知道有一个“IMAGE_REL_BASED_HIGHLOW”类型指向这个值的重定位(第 25.3.2 节),但我也不知道这意味着什么。我也知道它应该调用第 25.3.1 节中描述的 mscoree.dll 的“_CorExeMain”(我正在使用可执行文件),但我不明白如何。

最佳答案

0xFF 0x25 字节编码跳转 dword ptr 指令。 0x402000 值(在这种情况下)是任何 .NET exe 导入的一个 native 函数(即来自 mscoree.dll 的 _CorExeMain)在导入地址表 (IAT) 中的偏移量。当然,跳转到这个地址会启动进程的 CLR。

关于.net - .Net PE 文件中的入口点 RVA 是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6101388/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com