windows - PE 格式的 DOS header 中的 "e_lfanew"是什么意思?

标签 windows portable-executable

在PE(Windows可执行文件)格式的IMAGE_DOS_HEADER中有一个名为e_lfanew的字段,它起着非常重要的作用,因为它指向实际的PE标题数据。

我的问题是,“e_lfanew”究竟代表什么?这是什么意思?这太神秘了。

编辑:我不是问它做什么,我知道它做什么,我想知道 e_lfanew 中的字母实际上代表什么,为什么给了那个名字?

最佳答案

我的解释是它是New Executablelf文件a地址标题。

主要基于这篇P/Invoke文章中关于IMAGE_DOS_HEADER的评论:

public Int32 e_lfanew;      // File address of new exe header

“长”是因为它来自16位时代,变量大小是32位。

关于windows - PE 格式的 DOS header 中的 "e_lfanew"是什么意思?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47711282/

相关文章:

windows - TCP:地址已在使用异常 - 客户端端口的可能原因?没有端口耗尽

c - 将 SQLite FTS 扩展构建为 DLL 的正确方法是什么?

c# - 写入一个值到PE文件

windows - 有没有安全的方法来识别 MS-DOS 可执行文件?

linux - 使用 SSHFS 在 Windows 10 中挂载 Linux FS

windows - 在 Delphi 中下载文件

c - 用 C 编写的开源链接器

windows - PE 文件中的重复导入条目

asp.net - ASP.NET 中 IIS 服务器上的文件抛出 HTTP 401 拒绝访问错误

windows - win32 PE 加密器 = 防病毒误报