Firefox将其默认配置信息存储在omni.jar(较旧版本)或omni.ja(较旧版本)中。 omn​​i.jar和omni.ja都是zip文件格式。因此,我们可以使用许多程序/库来压缩或解压缩它们。

我想获取Firefox的一些默认信息。因此,我必须在那些omni文件中读取一些文件。我已使用7zip程序查看omni的内容或MiniZip / Zlib库,以在程序中读取omni。

在更高版本的omni.ja中,它读起来很好。但是对于旧版本,MiniZip无法打开omni.jar文件。然后,我使用7zip打开这些文件:omni.ja正常,omni.jar失败。但是使用其他一些程序,例如:WinRar,WinZip,... omni文件都可以很好地打开。

我当时在google上,并获得了一些信息:在较旧的版本中,Firefox创建了没有zip标准的omni.jar文件(一种zip文件格式)。等等等等。但是为什么WinRar或WinZip可以阅读。

任何人都可以帮助我让MiniZip正确读取omni.jar文件吗?

非常感谢你。

最佳答案

解决方案非常简单:您的“旧” omni.jar已损坏。我的omni.jarPK开头。

我建议再次从official archive下载Firefox。

[EDIT]似乎不同版本的Firefox使用不同的工具来构建ZIP存档。 zh-cn版本使用不以PK开头的类ZIP格式。从理论上讲,文件格式是有效的(它包含数据,然后是条目列表),但是几乎没有工具真正支持该格式(因此WinZIP和WinRAR是例外)。

此意图通过将omni.jar重命名为omni.ja来反映:它未加密,只是一种ZIP格式,不受广泛支持,并且US Firefox developers don't want to change this

其他开发人员(例如,用于de版本的开发人员)使用官方工具来构建omni存档,因此可以使用任何工具修改这些版本。

您将需要找到一种使用WinZIP / WinRAR更新档案的方法,或者需要下载原始的firefox源并将补丁添加到构建过程中。

10-07 18:06