PE可以拥有的最大部分数量是多少?

问题描述 投票:2回答:2

我正在用C#编写程序,在那里我读取了PE的字节。但是为了获得RVA,我需要使用部分标题。我想知道标题的最大数量是多少?

我试过谷歌,我看过这里,但我没有找到任何可以指向正确方向的东西

谢谢。

header byte portable-executable sections
2个回答
3
投票

由于段数以16位整数存储,因此大多数段可能是65535.在XP上,超过96段的程序将无法运行。在Vista和W7上,您可以使用所有65535个部分,程序仍将运行。其他操作系统可能存在其他限制。


2
投票

您必须阅读PE标头。你可以找到描述here或者从MSDN下载完整的描述

基本上你必须读取MZ头,然后读取PE头。部分的数量写在那里,所以你不能简单地说平均可执行文件中有N个部分。

一个相当不错的介绍,以及一些示例代码也可以找到here

© www.soinside.com 2019 - 2024. All rights reserved.