此目录下的文档都是用户自己编写的指南,并未经过eMule(电骡)开发人员的验证。不过对于大多数用户而言,这些文章仍然颇有裨益。你可以在论坛的此专用主题贴找到相关的提问与评论。
由于这篇指南How To Save "corrupt"
Downloads!(作者:Birk)及其原始的西班牙文文档Recuperar con MetMedic las descargas
desaparecidas(作者:risalan)的年头已经太长了,我翻译了Bagusajalf所写的较新的一篇西班牙文指南Recuperar con metFileRegenerator las descargas
desaparecidas。感谢Babelfish的帮助!
metFileRegenerator这款软件能够修复eDonkey、eMule以及其它兼容客户端的受损下载文件。V1.4版本需要安装Java运行时环境v1.4或更高版本。如果需要恢复超过4GB的文件,则需要使用v3.0.16(2006.10.8)或之后的版本。此软件仍在继续开发中。
当我们在eMule中添加下载时,会自动在临时目录(默认为\eMule\Temp\)下新建3个文档:
xxx.part(下载文件本身)、xxx.part.met(包含下载文件中每个文件块的信息。文件块大小为9.28MB,若位于文件尾部则会更小)以及xxx.part.met.bak(xxx.part.met的备份,其中“xxx”是某个数字。
有时eMule或操作系统会意外关闭,此时一个或多个xxx.part.met文件可能会发生损坏。相应的下载会从eMule的传输窗口中消失,并且在服务器窗口的日志页中将会显示如下一条错误信息:
01/06/2006 14:53:07:
错误:无效part.met文件版本!
(x.part.met => (null))
或者
01/06/2006 14:53:07:
错误:001.part.met()损坏,无法加载文件
“太倒霉了!我下617.15MB的文件只差最后0.15MB,结果就丢了……”
如何恢复丢失的下载
/!\重要提示:在操作临时文档之前,应先保存备份,这样即使某次尝试没有效果,也能安全返回到开始恢复前的状态。/!\
方法1
这是最简单的方法,应该最先尝试。
在不关闭eMule的情况下,将xxx.part.met.bak文件及时拷贝到\Temp目录之外(即手动保留该文件上一版本的备份),并且将其改名为xxx.part.met。
关闭eMule,将备份的xxx.part.met文件拷回到\Temp目录下,覆盖掉当前的同名文件。
启动eMule,看看下载文件是否已经得到修复。
假如此方法并未奏效,那么试一试……
方法2
-
选择丢失下载所对应的xxx.part文件。点击Next
-
现在便开始修复下载文件,并以进度条显示当前的修复进度。
-
假如还需要修复更多下载文件,重复以上步骤。
-
关闭metFileRegenerator,启动eMule(会hash这些曾经消失的下载文件)。此时的下载列表中将会出现两个(或若干对)相同的下载:取消掉那些手动添加的空白下载,只保留eMule恢复的下载文件。
-
现在可以删除之前所保留的各种备份了。请谨慎进行删除操作。
-
假如此方法仍然不能恢复下载文件,而是显示一条错误信息:“download
the file again and try MFR
again”(没错,这条信息就是这么多余),那就只好使出最后一招了……
方法3
步骤1
假如你不知道丢失的下载文件到底是什么,那么我们首先应当找出xxx.part究竟属于哪个下载。
如果安装了命令解释器插件(eMule
Shell插件),可以在Windows资源管理器中显示eMule临时文件内容的相关信息,这样就能够查看每个.part文件所对应的下载了。临时文件信息会在黄色提示框中显示(气泡提示),也会在窗口的内框(状态栏)显示,当然也可以在Vista下通过“详情”以及其它各种方式查看。
不过如果对应的part.met文件损坏的话,可能不会显示任何有用的信息,因为这个插件也是从part.met文件中读取各个文件块信息的……
你也可以在对应的xxx.part.met文档或xxx.part.met.bak文档中直接查找此文件的相关信息。用十六进制编辑器(Ultraedit或WinHex)或文本编辑器(例如notepad.exe(记事本))打开这些文件都行。不过当下载文件损坏时,xxx.part.met文件通常都是空的,有时连文件都消失了……
用十六进制编辑器打开后,所显示的xxx.part.met文件的内容
另一种方法是直接“读取”xxx.part文件,也就是用十六进制编辑器查看此文件的文件头或文件尾,根据一些特征数据识别文件的类型和内容(注意!如果临时文件的块头很大,那么十六进制编辑器可能需要很长的时间才能打开该文件,甚至会造成计算机暂时失去响应),这种方式对数据文件(zip、rar、iso、bin、pdf等等)比较有效。也可以尝试直接用媒体播放器(例如VideoLan
Client,参见帮助与支持->特色功能->预览多媒体文件)打开临时文件,这种方式对音频或视频文件比较有效。
假如你实在无法辨别出这个孤零零的xxx.part文件究竟是个什么下载文件,那么这个下载就真的无法恢复了。
步骤2
当鉴别出损坏的是什么下载后,先去重新开始下载同一个文件。注意不能是“相似”的文件,必须是hash值完全相同的文件。
在传输窗口中,在该下载条目上单击鼠标右键,选择显示详情(或将光标停留在该下载条目上),就能看到此文件包含多少个文件段。
等到eMule找齐了所有文件块的来源(在文件进度条中不再显示红色部分),并且下载文件的详细信息中“Hashset
可用”显示“是”(或已经下载了几兆),停止下载,退出eMule
步骤3
- 运行metFileRegenerator(需要安装Java运行时环境v1.4或更高版本),选择Recovery,之后点击Next
-
选定eMule的临时目录,注意丢失下载的xxx.part文件应在此目录中,点击Next
-
小提示:
点击Next
-
选择丢失下载所对应的xxx.part文件。点击Next
-
现在便开始修复下载文件,并以进度条显示当前的修复进度。
-
假如还需要修复更多下载文件,重复以上步骤。
-
关闭metFileRegenerator,启动eMule(会hash这些曾经消失的下载文件)。此时的下载列表中将会出现两个(或若干对)相同的下载:取消掉那些手动添加的空白下载,只保留eMule恢复的下载文件。
-
现在可以删除之前所保留的各种备份了。请谨慎进行删除操作。
*
注意:metFileRegenerator会在eMule的临时目录中创建一个名为\MFRcache的子目录。之后每修复一个文件就会在此目录下生成一个xxx.part.met.old文件。成功恢复所有下载文件后,可以直接删掉这些临时文件。
eMule
Morph系mod在下载文件的右键菜单中有一个“导入未完成文件”的功能,实际上与本帖所描述的功能相同。
添加(与丢失文件相同的)下载后,鼠标右键单击该下载条目,选此菜单项,随后选择丢失的xxx.part文件并进行恢复。此功能已经支持修复超过4GB的下载文件。
在某些更加极端的情况下,下载列表中的所有文件可能会全部消失。如果碰到这种情况,一定要保持头脑冷静。首先检查选项
->
目录下的临时文件设置是否指向正确的路径,然后重启eMule,按照上面介绍的方法修复所有下载文件。强烈建议在重启eMule之前备份所有临时文件。
由于下载丢失的现象比较少见(我上一次碰到这种情况也是很久以前了),因此以上所描述的恢复步骤缺乏验证,可能并不准确。希望大家不吝指正。
祝好
感谢本篇指南的原始作者Bagusajalf。假如你觉得这篇文章有用,可以先整理整理去掉翻译中的错误,然后放到快速帮助与指南中。
祝驾骡愉快
|