- 12
- 0
- 约4.27千字
- 约 17页
- 2017-10-17 发布于湖北
- 举报
手工重建复合文档(.doc;xls,ppt)文件头,修复文件全过程
最近学习了复合文档的格式,在修复复合文档头方面做了不少实践,有了一些心得,经过梳理,做了个例子,把思路和过程介绍给大家,希望能解决你的不时之需!
?? 例子中用的文件如下图:名为“实验文档”,是个空文档,里面没有内容,看属性,10,752字节,刚好21扇区,复合文档的文件大小一定是512字节的整数倍,这跟复合文档的设计有关系。EXCEL,PPT等文件也属于复合文档,也符合这样的特点。
?
?
? 后来我又想,可能有网友会对修复后的文件产生怀疑,没有内容的文件可能说明不了问题,所以我在文件中输入了很短的文本内容!如下图:
?
?
??
??? 实验文档是一个正常的文件,另外我用Winhex把该文件的文件头(前面512字节)全部写成了0,最彻底的破坏,保存为“损坏的实验文档”,大家可以用现有的修复软件试一下,能不能修复,我用EasyRecovery Professional没有修复成功!其它的软件没有试过!
?
?? 下面,就请大家跟我一起看,如何把“损坏的实验文档”修复成功!
?? 先介绍用到的工具软件Winhex,功能很强大,可以用二进制的方式打开文件,并进行编辑,保存!该软件不仅可以打开文件,还可以打开硬盘,对硬盘数据进行编辑,搜索功能什分强大,用起来非常方便,同时支持脚本,提供API函数。软件界面如下图:
?
?
??? 用该软件打开“实验文档”和“损坏的实验文档”,可以对比一下前512字节,为了便于操作,我们需要将文件解释为硬盘,让软件以扇区的方式显示文件内容,看起来直观些!
两个文件的在软件里显示如下图:
?
?
?
?
??? 可见,“损坏的实验文档”前面的512字节全是0,文件头被全部破坏,文件无法用office打开!
?
复合文档文件头的定义:
Offset ? Size ???? Contents?????????????????????????????????????????????????
0 ????????? 8 ????????? 复合文档文件标识:D0H CFH 11H E0H A1H B1H 1AH E1H
8 ????????? 16 ??????? 此文件的唯一标识(不重要, 可全部为0)
24 ??????? 2 ????????? 文件格式修订号 (一般为003EH)
26 ??????? 2 ????????? 文件格式版本号(一般为0003H)
28 ??????? 2 ????????? 字节顺序规则标识(见3.2)::FEH FFH = Little-Endian
FFH FEH = Big-Endian
30 ??????? 2 ????????? 复合文档中sector的大小(ssz),以2的幂形式存储, sector实际大小
为s_size = 2ssz 字节(一般为9即512字节, 最小值为7即128字节)
32 ??????? 2 ????????? short-sector的大小(见5.1),以2的幂形式存储, short-sector实际大
????????????? 小为s_s_size = 2sssz 字节(一般为6即64字节,最大为sector的大小)
34 ??????? 10 ??????? Not used
44 ??????? 4 ????????? 用于存放扇区配置表(SAT)的sector总数
48 ??????? 4 ????????? 用于存放目录流的第一个sector的SID (见6)
52 ??????? 4 ????????? Not used
56 ??????? 4 ????????? 标准流的最小大小(一般为4096 bytes), 小于此值的流即为短流。
60 ??????? 4 ????????? 用于存放短扇区配置表(SSAT)的第一个sector的SID (见5.2),
或为–2 (End Of Chain SID)如不存在。
64 ??????? 4 ????????? 用于存放短扇区配置表(SSAT)的sector总数
68 ??????? 4 ????????? 用于存放主扇区配置表(MSAT)的第一个sector的SID (见4.1),
或为–2 (End Of Chain SID) 若无附加的sectors。
72 ??????? 4 ????????? 用于存放主扇区配置表(MSAT)的sector总数
76 ??????? 436 ????? 存放主扇区配置表(MSAT)的第一部分,包含109个SID。
?????????????????????????????????????????????????????????????????????????? ??????
?
看起来有些复杂!
修复文件头的数据只需要计算
您可能关注的文档
最近下载
- 中医基础理论:气一元论.ppt VIP
- DB61_T 2002-2025 窄轨旅游轨道交通施工技术规范.pdf VIP
- DB61_T 2004-2025 水性环氧改性微表处施工技术规范.pdf VIP
- 北京市装配式建筑项目预制率和装配率计算说明及示例.ppt VIP
- 火灾报警控制器简单操作.doc VIP
- DB61_T 2012-2025 沥青路面一体化就地热再生施工技术规范.pdf VIP
- DB61_T 2013-2025 沥青路面半刚性基层微裂均质化处治施工技术规范.pdf VIP
- 单件流培训.ppt VIP
- 隧道工程应急处置方案(3篇).docx VIP
- 海关面试题及答案.doc VIP
原创力文档

文档评论(0)