MS-DOS头
1,每个PE文件是以一个DOS程序开始的,有了它,一旦程序在DOS下执行,DOS才能识别出这是有效的执行体。
2,PE文件的第一个字节起始于一个传统的MS-DOS头部,被称作为IMAGE_DOS_HEADER。
3,IMAGE_DOS_HEADER 结构如下:
- IMAGE_DOS_HEADER STRUCT
- {
- +0h WORDe_magic
- +2h WORDe_cblp
- +4h WORDe_cp
- +6h WORD e_crlc
- +8h WORDe_cparhdr
- +0ah WORD e_minalloc
- +0ch WORDe_maxalloc
- +0eh WORDe_ss
- +10h WORDe_sp
- +12h WORDe_csum
- +14h WORDe_ip
- +16h WORDe_cs
- +18h WORDe_lfarlc
- +1ah WORDe_ovno
- +1ch WORDe_res[4]
- +24h WORDe_oemid
- +26h WORD e_oeminfo
- +29h WORDe_res2[10]
- +3ch DWORD e_lfanew
- } IMAGE_DOS_HEADER ENDS
其实这么多,主要记住:
WORD e_magic //---DOS可执行文件标记.
DWORD e_lfanew ///--- 指向PE文件头(这个是一个指针)。