你的位置:首页 > 软件开发 > 操作系统 > [PE结构分析] 5.IMAGE_OPTIONAL_HEADER

[PE结构分析] 5.IMAGE_OPTIONAL_HEADER

发布时间:2016-08-14 13:00:05
结构体源代码如下: typedef struct _IMAGE_OPTIONAL_HEADER { // // Standard fields. //+18h WORD Magic; // 标志字, ROM 映像(0107h),普通可执行文件(01 ...

[PE结构分析] 5.IMAGE_OPTIONAL_HEADER

结构体源代码如下:

typedef struct _IMAGE_OPTIONAL_HEADER {  //  // Standard fields.   //+18h  WORD  Magic;          // 标志字, ROM 映像(0107h),普通可执行文件(010Bh)+1Ah  BYTE  MajorLinkerVersion;   // 链接程序的主版本号+1Bh  BYTE  MinorLinkerVersion;   // 链接程序的次版本号+1Ch  DWORD  SizeOfCode;       // 所有含代码的节的总大小+20h  DWORD  SizeOfInitializedData;  // 所有含已初始化数据的节的总大小+24h  DWORD  SizeOfUninitializedData; // 所有含未初始化数据的节的大小+28h  DWORD  AddressOfEntryPoint;   // 程序执行入口RVA ***(必须了解)***+2Ch  DWORD  BaseOfCode;       // 代码的区块的起始RVA+30h  DWORD  BaseOfData;       // 数据的区块的起始RVA  //  // NT additional fields.  以下是属于NT结构增加的领域。  //+34h  DWORD  ImageBase;        // 程序的首选装载地址 ***(必须了解)***+38h  DWORD  SectionAlignment;    // 内存中的区块的对齐大小 ***(必须了解)***+3Ch  DWORD  FileAlignment;      // 文件中的区块的对齐大小 ***(必须了解)***+40h  WORD  MajorOperatingSystemVersion; // 要求操作系统最低版本号的主版本号+42h  WORD  MinorOperatingSystemVersion; // 要求操作系统最低版本号的副版本号+44h  WORD  MajorImageVersion;    // 可运行于操作系统的主版本号+46h  WORD  MinorImageVersion;    // 可运行于操作系统的次版本号+48h  WORD  MajorSubsystemVersion;  // 要求最低子系统版本的主版本号+4Ah  WORD  MinorSubsystemVersion;  // 要求最低子系统版本的次版本号+4Ch  DWORD  Win32VersionValue;    // 莫须有字段,不被病毒利用的话一般为0+50h  DWORD  SizeOfImage;       // 映像装入内存后的总尺寸+54h  DWORD  SizeOfHeaders;      // 所有头 + 区块表的尺寸大小+58h  DWORD  CheckSum;        // 映像的校检和+5Ch  WORD  Subsystem;        // 可执行文件期望的子系统 ***(必须了解)***+5Eh  WORD  DllCharacteristics;   // DllMain()函数何时被调用,默认为 0+60h  DWORD  SizeOfStackReserve;   // 初始化时的栈大小+64h  DWORD  SizeOfStackCommit;    // 初始化时实际提交的栈大小+68h  DWORD  SizeOfHeapReserve;    // 初始化时保留的堆大小+6Ch  DWORD  SizeOfHeapCommit;    // 初始化时实际提交的堆大小+70h  DWORD  LoaderFlags;       // 与调试有关,默认为 0 +74h  DWORD  NumberOfRvaAndSizes;   // 下边数据目录的项数,这个字段自Windows NT 发布以来一直是16+78h  IMAGE_DATA_DIRECTORY DataDirectory[IMAGE_NUMBEROF_DIRECTORY_ENTRIES];  // 数据目录表 ***(必须了解,重点)*** winNT发布到win10,IMAGE_NUMBEROF_DIRECTORY_ENTRIES一直都是16} IMAGE_OPTIONAL_HEADER32, *PIMAGE_OPTIONAL_HEADER32;

原标题:[PE结构分析] 5.IMAGE_OPTIONAL_HEADER

关键词:

*特别声明:以上内容来自于网络收集,著作权属原作者所有,如有侵权,请联系我们: admin#shaoqun.com (#换成@)。

可能感兴趣文章

我的浏览记录