4

假设我已经将一个 PE 可执行文件加载到内存中,并使其与 dos、nt 标头结构相匹配,现在我想找出它的 .text/code 段实际(不是 VA)偏移量+大小我该怎么做?是否有用于查找 .text 起始偏移量的 win32 api,或者可能是来自指向该段起始偏移量的结构的指针

谢谢。

4

3 回答 3

2

IMAGE_FILE_HEADER 和 IMAGE_OPTIONAL_HEADER 有一些这样的信息。您可以使用 GetNTHeaders() 函数检索它们。从那里,您可以使用 IMAGE_FIRST_SECTION (pNtHeaders) 获取第一节标题。部分标题是连续的,包含您感兴趣的其余信息。文件标题包含部分的数量。

于 2010-02-11T17:02:42.457 回答
1

尝试使用PE 文件格式 DLL来获取信息。提供的完整源代码不受 GPL 约束,因此您可以在商业项目中使用它。

PE 文件资源管理器也可用(带有源代码)向您展示如何使用 DLL。亲

于 2010-05-12T17:12:27.723 回答
1

是的,请参阅PE 内部的 Peering:Win32 可移植可执行文件格式之旅

于 2010-02-11T16:49:09.427 回答