PE文件结构体-IMAGE_DATA_DIRECTORY

Posted a-s-m

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了PE文件结构体-IMAGE_DATA_DIRECTORY相关的知识,希望对你有一定的参考价值。

IMAGE_OPTIONAL_HEADER结构体最后一个成员是数组结构,大小为16,每个元素都是一个IMAGE_DATA_DIRECTORY结构体

typedef struct _IMAGE_DATA_DIRECTORY {
  DWORD VirtualAddress;                   /**指向某个数据的相对虚拟地址   RAV  偏移0x00**/
  DWORD Size;                             /**某个数据块的大小                 偏移0x04**/
} IMAGE_DATA_DIRECTORY, *PIMAGE_DATA_DIRECTORY;

在这个数据目录结构体中只有两个成员VirtualAddressSize,这两个成员的含义比较简单,VirtualAddress指定了数据块的相对虚拟地址(RVA)。Size则指定了该数据块的大小,有时并不是该类型数据的总大小,可能只是该类型数据一个数据项的大小。这两个成员(主要是VirtualAddress)成为了定位各种表的关键,所以一定要知道每个数组元素所指向的数据块类型,以下表格就是它的对应关系:

技术图片

 

以上是关于PE文件结构体-IMAGE_DATA_DIRECTORY的主要内容,如果未能解决你的问题,请参考以下文章

PE文件结构体-IMAGE_FILE_HEADER

PE文件介绍 -DOS头,DOS存根,NT头

PE 导入表

PE知识复习之PE的节表

010Edit手写PE

PE文件学习