PE文件的装载过程(4) 

上周毕业答辩,没完成任务,惭愧惭愧。。。。

可选头的最后一部分是DataDirectory字段,这个字段包含了16个IMAGE_DATA_DIRECTORY结构,结构的定义如下:

IMAGE_DATA_DIRECTORY STRUCT
  VirtualAddress    DWORD      ?  ;数据的起始RVA
  isize               DWORD      ? ;数据块的长度
IMAGE_DATA_DIRECTORY ENDS

结构很简单,16个IMAGE_DATA_DIRECTORY代表的内容对应如下:

0
 IMAGE_DIRECTORY_ENTRY_EXPORT
 导出表
 
1
 IMAGE_DIRECTORY_ENTRY_IMPORT
 导入表
 
2
 IMAGE_DIRECTORY_ENTRY_RESOURCE
 资源
 
3
 IMAGE_DIRECTORY_ENTRY_EXCEPTION
 异常(具体资料不详)
 
4
 IMAGE_DIRECTORY_ENTRY_SECURITY
 安全(具体资料不详)
 
5
 IMAGE_DIRECTORY_ENTRY_BASERELOC
 重定位表
 
6
 IMAGE_DIRECTORY_ENTRY_DEBUG
 调试信息
 
7
 IMAGE_DIRECTORY_ENTRY_ARCHITECTURE
 版权信息
 
8
 IMAGE_DIRECTORY_ENTRY_GLOBALPTR
 具体资料不详
 
9
 IMAGE_DIRECTORY_ENTRY_TLS
 Thread Local Storage
 
10
 IMAGE_DIRECTORY_ENTRY_LOAD_CONFIG
 具体资料不详
 
11
 IMAGE_DIRECTORY_ENTRY_BOUND_IMPORT
 具体资料不详
 
12
 IMAGE_DIRECTORY_ENTRY_IAT
 导入函数地址表
 
13
 IMAGE_DIRECTORY_ENTRY_DELAY_IMPORT
 具体资料不详
 
14
 IMAGE_DIRECTORY_ENTRY_COM_DESCRIPTOR
 具体资料不详
 
15
 未使用
 


其中重要的元素有索引值为0、1、5、12的四个,对应的意义如上表所示,在内存中寻找相应的节靠的就是以上的16个字段

到此,文件头结束,文件头在内存中的排列与在磁盘中的排列是一致的,在磁盘中的偏移是多少其在内存中的偏移就是多少。接着文件头的就是节表了,放在下一篇来说。

http://www.zeroplace.cn/article.asp?id=281   
PE文件的装载过程(1)
http://www.zeroplace.cn/article.asp?id=282
PE文件的装载过程(2)
http://www.zeroplace.cn/article.asp?id=283
PE文件的装载过程(3)
http://www.zeroplace.cn/article.asp?id=284
PE文件的装载过程(4)



[本日志由 admin 于 2010-04-10 06:14 PM 编辑]

有什么问题可以加群,100852896
点击这里加入此群 在线提问
文章来自: 本站原创
Tags: 文件 pe 格式 资源 汇编
评论: 0 | 查看次数: 6790
博主QQ: 友情链接请找我
QQ群: 灰色档案
返回顶部 关闭