PE文件问题

KNightGale 2008-11-11 11:21:49
我用PE文件最后一个节的 PointToRawData+SizeOfRawData,总是远小于文件的实际大小.

把各个节的SizeOfRawData加起来,也远小于文件的实际大小,是不是还有其它因素要考虑?

一个几M的文件,我求得的大小总是只有几百KB,晕.

谢谢.
...全文
95 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
KNightGale 2008-11-11
  • 打赏
  • 举报
回复
To DelphiGuy
考虑了文件对齐,考虑了Header,各节数据大小之和仍然远小于文件大小
To killbug2004
我想要添加一个新的节,然后附加一些代码到PE文件.我用最后一个节的PointToRawData+SizeOfRawData,再附上自己代码,发现文件总是被截得很短.
请问下,overlay 是什么意思?
To XiaoPoy
书上的方法都是最后一节的PointToRawData+SizeOfRawData,好像都没有考虑最后一节后面还有数据的情况.
我以前选的都是安装程序,好像除了代码外,确实应当还有其它东西.刚才选了一个普通程序,没有出现问题.请问下,有数据不在各节里面,这还是一个PE文件吗?
  那我们添加代码时,不能够按照书上的由最后一个节来确定代码位置?
  • 打赏
  • 举报
回复
section还有header,并非只有raw数据。
xiaopoy 2008-11-11
  • 打赏
  • 举报
回复
pe文件的大小是 PointToRawData+SizeOfRawData
但文件里面不一定只是PE文件啊。
killbug2004 2008-11-11
  • 打赏
  • 举报
回复
而且SizeOfRawData可能也不是按照filealignment对齐的,这个值没什么太大的意义
看看这个贴子http://topic.csdn.net/t/20020127/14/502171.html
killbug2004 2008-11-11
  • 打赏
  • 举报
回复
你这样计算是要干嘛
得到PE文件的大小可以用GetFileSize
文件的实际大小不是这样计算的,在最后一个节后面可能还有overlay数据

21,500

社区成员

发帖
与我相关
我的任务
社区描述
汇编语言(Assembly Language)是任何一种用于电子计算机、微处理器、微控制器或其他可编程器件的低级语言,亦称为符号语言。
社区管理员
  • 汇编语言
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧