巧用WinHex找回消失的磁盘数据

[复制链接]

该用户从未签到

15

主题

674

回帖

9386

积分

[INTOHARD]团长

浸淫

Rank: 8Rank: 8

积分
9386
发表于 2009-1-9 11:00:17 | 显示全部楼层 |阅读模式
由于我是个对磁盘空间过敏的人,每当磁盘空间少到几百兆,就会想办法删掉不用的软件,时间一长,系统会变的千疮百孔,直到有一天实在无法忍受,决定重装系统,麻烦极了。与是想用Guest做个系统映象,没想到人世间最痛苦的事情发生了。

我有两个物理硬盘,主盘分了两个区,分别为一个C盘,一个E盘,所以把Guest这个软件放到第二个硬盘D盘的根目录下。重起进入DOS进入到软件的画面,不管三七二十一,玩玩再说。好奇的我直接选择第一项功能: To Disk,经过乱七八糟的英文提示后,毅然点了OK按扭,接下来两个硬盘开始狂响,我突然意识到事情不对,强行重起动后,打开资源管理器,点下D盘,发现已经空白一片了。天哪!我的软件!我的游戏!我的一切!我浑身冒汗,好像做梦一样,早知道……咦,对了!好像winhex有打开磁盘的功能,只要知道一些文件的开头标记,兴许能恢复一些文件。



幸好WinHex装到C盘上了,启动后选“OpenDisk”打开D盘,在WinHex子窗口的表格内共有三个列,最左边的是偏移值,相当于行号;中间显示的是16进制代码,右边是每组代码对应显示的文字。因为无论是那种格式的文件开头都会有特定的标记,所以只要知道对应的代码就能知到文件的类型。由于我D盘上大部分是RAR压缩格式的文件,所以我先用WinRar创建一个RAR文件,再用WinHex打开,在右边开头显示出Rar!字样(图1),对应的16进制的值就是“52 61 72 21”,一同选中后按“Ctrl+Shift+C”把这串代码复制到剪贴板,然后切换到刚才打开D盘的窗口,依次选择 “Search >> Find Hex Values”,按“Ctrl+V”或在输入框内点右键选择“粘贴”,确认无误后点“OK”开始搜索。

                               
登录/注册后可看大图



因为D盘容量是10GB,所以要经过漫长的等待。为了恢复文件,等他个一二天也值得。好在只用了5分钟的时间,便找到了第一个数值完全相同的一串代码,双击选种开头部分。

在此说明一下,有些软件在结尾也会有标记,比如ZIP格式,但RAR的结尾没有标记,这并不是件坏事,打个比方,一个RAR文件有300K大小,如果你选择的数值超过了300K而达到10M,那么用WinRar压时还可将原内容完整解压出来,只是在后面提示“非预期的压缩包结尾!”,你想一下,不可能多个RAR文件都会按顺序排列,中间可能会加入其它的文件,比如EXE文件,所以如果恢复的是RAR文件,选多点也无所谓,就怕选少了。所以下面我还要按F3键继续查找。

好在运气不错,硬盘上的RAR文件排列紧密,很快找到了第二个相同的代码串,这回要在代码串的前一个位置点击右键,在弹出的快捷菜单中选择“End of block”,选中区会变成浅兰色,这样就成功的选择住了一个RAR文件。

在此为你提个建议,最好每找到一串代码,就用笔记下它的偏移值,免得误操作后还得重头查找,这将是件非常麻烦的事。

那么怎样把选好的编码提取出来并变成文件呢?很简单,WinHex提供了这项功能,打开菜单上的“Edit”项,指向“Copy Block”,在弹出的子菜单中选择“Into New File”项(图2)。

                               
登录/注册后可看大图



在弹出的“Save File As”窗口下方写入建立的文件名,别忘了加上扩展名,比如“noname1.RAR”,点“Save”按扭后,会出现保存文件的进度条,快慢要看这个文件的大小了。待保存完成后,在保存的目录内就会出现刚命名的那个文件,双击用WinRar打开,哈哈!压缩包的文件目录完好,不过不要高兴的过早,解压试试,索性没提示错误,至此,我成功抢救了第一个文件。用同样的方法恢复了部分重要的文件,不过也有一些文件提示损坏,原因就是被Guest重新写入的文件给覆盖掉了。

以后大家遇到类似现象后千万不要着急,首先要做的就是尽量保证不要对硬盘进行写操作,只有这样,你才能把损失降到最小。

该用户从未签到

11

主题

276

回帖

443

积分

[INTOHARD]排长

Rank: 3Rank: 3

积分
443
QQ
发表于 2009-1-9 11:11:04 | 显示全部楼层
恩  不错哦  
其实WINHEX这个东西 说简单也不简单
说不简单也简单的很
不是吗?

该用户从未签到

5

主题

97

回帖

2056

积分

[INTOHARD]营长

Rank: 6Rank: 6

积分
2056
发表于 2009-1-9 12:22:04 | 显示全部楼层
有价值,值得学习(49: (49: (49:
  • TA的每日心情
    无聊
    2013-9-3 10:22
  • 签到天数: 1 天

    [LV.1]布衣百姓

    3

    主题

    555

    回帖

    1万

    积分

    [INTOHARD]团长

    Rank: 8Rank: 8

    积分
    11712
    QQ
    发表于 2009-1-12 00:09:06 | 显示全部楼层
    这个不错,谢谢分享(38: (38:
  • TA的每日心情
    难过
    2017-3-13 10:47
  • 签到天数: 20 天

    [LV.4]七品知县

    17

    主题

    222

    回帖

    325

    积分

    [INTOHARD]排长

    Rank: 3Rank: 3

    积分
    325
    发表于 2009-1-12 00:35:40 | 显示全部楼层
    我心中的疑惑终于知道了,一直以来都不知道怎么将16进制码转换成文件,找不到一个说明方法可以让我理解,非常感谢楼主。我刚开始学WINHEX,技术还很菜,(38: (38:

    该用户从未签到

    0

    主题

    194

    回帖

    410

    积分

    [INTOHARD]排长

    Rank: 3Rank: 3

    积分
    410
    发表于 2009-1-12 17:38:32 | 显示全部楼层
    我刚开始学WINHEX,技术还很菜
    [s:190] [s:190] [s:190] [s:190]

    该用户从未签到

    0

    主题

    7

    回帖

    23

    积分

    [INTOHARD]工兵

    Rank: 1

    积分
    23
    发表于 2009-3-8 04:49:51 | 显示全部楼层
    谢谢了。我在这里又学到了一点
  • TA的每日心情
    开心
    2015-1-16 17:53
  • 签到天数: 4 天

    [LV.2]九品芝麻官

    0

    主题

    236

    回帖

    235

    积分

    [INTOHARD]排长

    Rank: 3Rank: 3

    积分
    235
    发表于 2009-3-8 16:32:38 | 显示全部楼层
    谢谢了。我在这里又学到了一点

    该用户从未签到

    0

    主题

    15

    回帖

    21

    积分

    [INTOHARD]工兵

    Rank: 1

    积分
    21
    发表于 2009-3-8 18:18:37 | 显示全部楼层
    好,有点收获了

    该用户从未签到

    1

    主题

    13

    回帖

    39

    积分

    [INTOHARD]工兵

    Rank: 1

    积分
    39
    发表于 2009-3-9 10:44:57 | 显示全部楼层
    不错不错,好贴子[s:18]
    您需要登录后才可以回帖 登录 | 立即注册

    本版积分规则

    快速回复 返回顶部 返回列表