表示 COFF 标头格式。
语法
typedef struct _IMAGE_FILE_HEADER {
WORD Machine;
WORD NumberOfSections;
DWORD TimeDateStamp;
DWORD PointerToSymbolTable;
DWORD NumberOfSymbols;
WORD SizeOfOptionalHeader;
WORD Characteristics;
} IMAGE_FILE_HEADER, *PIMAGE_FILE_HEADER;
成员
Machine
计算机的体系结构类型。 图像文件只能在指定的计算机或模拟指定计算机的系统上运行。 此成员可以是以下值之一。
值 |
含义 |
- IMAGE_FILE_MACHINE_I386
- 0x014c
|
x86 |
- IMAGE_FILE_MACHINE_IA64
- 0x0200
|
Intel Itanium |
- IMAGE_FILE_MACHINE_AMD64
- 0x8664
|
X64 |
NumberOfSections
节数。 这指示部分表的大小,该表紧跟在标头之后。 请注意,Windows 加载程序将节数限制为 96。
TimeDateStamp
图像时间戳的低 32 位。 这表示链接器创建映像的日期和时间。 根据系统时钟,该值以自 1970 年 1 月 1 日世界协调时间 (00:00:00) 午夜以来经过的秒数表示。
PointerToSymbolTable
符号表的偏移量(以字节为单位),如果没有 COFF 符号表,则为零。
NumberOfSymbols
符号表中的符号数。
SizeOfOptionalHeader
可选标头的大小(以字节为单位)。 对于对象文件,此值应为 0。
Characteristics
图像的特征。 此成员可以是以下一个或多个值。
值 |
含义 |
- IMAGE_FILE_RELOCS_STRIPPED
- 0x0001
|
重定位信息已从文件中删除。 文件必须加载在其首选基址处。
如果基址不可用,加载程序将报告错误。
|
- IMAGE_FILE_EXECUTABLE_IMAGE
- 0x0002
|
该文件是可执行的, (没有未解析的外部引用) 。
|
- IMAGE_FILE_LINE_NUMS_STRIPPED
- 0x0004
|
从文件中删除了 COFF 行号。
|
- IMAGE_FILE_LOCAL_SYMS_STRIPPED
- 0x0008
|
COFF 符号表条目已从文件中删除。
|
- IMAGE_FILE_AGGRESIVE_WS_TRIM
- 0x0010
|
积极剪裁工作集。 该值已过时。
|
- IMAGE_FILE_LARGE_ADDRESS_AWARE
- 0x0020
|
应用程序可以处理大于 2 GB 的地址。
|
- IMAGE_FILE_BYTES_REVERSED_LO
- 0x0080
|
单词的字节反转。 此标志已过时。
|
- IMAGE_FILE_32BIT_MACHINE
- 0x0100
|
计算机支持 32 位字。
|
- IMAGE_FILE_DEBUG_STRIPPED
- 0x0200
|
调试信息已被删除并单独存储在另一个文件中。
|
- IMAGE_FILE_REMOVABLE_RUN_FROM_SWAP
- 0x0400
|
如果映像位于可移动媒体上,请将其复制到 并从交换文件运行它。
|
- IMAGE_FILE_NET_RUN_FROM_SWAP
- 0x0800
|
如果映像位于网络上,请将其复制到 并从交换文件运行它。
|
- IMAGE_FILE_SYSTEM
- 0x1000
|
映像是系统文件。
|
- IMAGE_FILE_DLL
- 0x2000
|
图像是 DLL 文件。 虽然它是可执行文件,但不能直接运行。
|
- IMAGE_FILE_UP_SYSTEM_ONLY
- 0x4000
|
文件应仅在单处理器计算机上运行。
|
- IMAGE_FILE_BYTES_REVERSED_HI
- 0x8000
|
单词的字节反转。 此标志已过时。
|
要求
要求 |
值 |
最低受支持的客户端 |
Windows XP [仅限桌面应用] |
最低受支持的服务器 |
Windows Server 2003 [仅限桌面应用] |
标头 |
winnt.h (包括 Windows.h) |
另请参阅
IMAGE_NT_HEADERS
ImageHlp 结构