首页
社区
课程
招聘
怎么都得不到PE文件的正确大小。。。
发表于: 2006-6-16 20:24 4318

怎么都得不到PE文件的正确大小。。。

2006-6-16 20:24
4318
算来算去都差一些。。。。

希望朋友指点一下。。。

先读取一个IMAGE_DOS_HEADER结构,然后移动文件指针到e_lfanew这里

然后读取一个IMAGE_NT_HEADERS结构

获取节的数目,然后依次读取IMAGE_SECTION_HEADER

这样最终大小

e_lfanew+sizeof(IMAGE_NT_HEADERS)+sizeof(IMAGE_SECTION_HEADER)+SizeOfRawData

后面是一个循环,就是加上每节的大小,但是最后算出来的值总是差一些,我漏算了什么吗?

[培训]内核驱动高级班,冲击BAT一流互联网大厂工作,每周日13:00-18:00直播授课

收藏
免费 0
支持
分享
最新回复 (4)
雪    币: 236
活跃值: (26)
能力值: ( LV8,RANK:130 )
在线值:
发帖
回帖
粉丝
2
MS-DOS头部
  |
MS-DOS实模式残余程序
  |
PE文件标志
  |
........
2006-6-16 20:28
0
雪    币: 235
活跃值: (100)
能力值: ( LV4,RANK:50 )
在线值:
发帖
回帖
粉丝
3
最初由 红火蚁 发布
MS-DOS头部
|
MS-DOS实模式残余程序
|
PE文件标志
........


e_lfanew就包含了DOS部分的全部大小啊
2006-6-16 20:39
0
雪    币: 235
活跃值: (100)
能力值: ( LV4,RANK:50 )
在线值:
发帖
回帖
粉丝
4
解决了,原来少读了一段结构体。。
2006-6-16 20:51
0
雪    币: 238
活跃值: (326)
能力值: ( LV12,RANK:450 )
在线值:
发帖
回帖
粉丝
5
自己动手,丰衣足食。
2006-6-16 21:00
0
游客
登录 | 注册 方可回帖
返回
//