这多余的字节是多少? [英] What's this extra bytes?

查看:83
本文介绍了这多余的字节是多少?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我正在研究PE(便携式可执行文件)格式,但是我看到了用MinGW和MSVC编译的C ++程序之间的区别:

I'm studying the PE (Portable Executable) format, but I saw a difference between C++ programs compiled with MinGW and MSVC:

在此程序无法在DOS模式下运行"之后和"PE"魔术签名之前,还有一些额外的字节.有谁知道这是什么,为什么会有"Rich"这个词?

It's some extra bytes after 'This program cannot be run in DOS mode' and before the 'PE' magic signature. Anyone know what this is and why there's the 'Rich' word?

推荐答案

这是"Rich标头".它是由Microsoft的link.exe添加的(请注意在该块的末尾添加了文本"Rich").它是DOS标头和NT标头(在DOS存根和PE标头之间)之间的PE文件中的结构.它包含链接库的版本信息和链接器版本.

This is the "Rich header". It was added by Microsoft's link.exe (notice the text "Rich" at the end of the block). It's a structure in PE files between the DOS Header and the NT Header (between DOS stub and PE Header). It contains version information of linked libraries and the linkers versions.

进一步阅读:

这篇关于这多余的字节是多少?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆