我正在研究 PE(可移植可执行文件)格式,但我发现用 MinGW 和 MSVC 编译的 C++ 程序之间存在差异:
![image](https://i.stack.imgur.com/L8uqi.png)
这是“此程序无法在 DOS 模式下运行”之后和“PE”魔术签名之前的一些额外字节。
有人知道这是什么以及为什么有“Rich”这个词吗?
这就是“丰富的标题”。它是由 Microsoft 的 link.exe 添加的(请注意块末尾的文本“Rich”)。它是 PE 文件中 DOS 标头和 NT 标头之间(DOS 存根和 PE 标头之间)的结构。它包含链接库的版本信息和链接器版本。
进一步阅读:
- 未记录的 Microsoft“Rich”标头
- 微软的丰富签名(未记录)
- 丰富的标题
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)