如何打包 7zip 解压后的 chm 文件
How to pack-back a chm file that was unpacked by 7zip
根据 7zip 文档,7zip 支持的格式有:
打包/解包:7z、XZ、BZIP2、GZIP、TAR、ZIP 和 WIM
仅解包:AR、ARJ、CAB、CHM、CPIO、CramFS、DMG、EXT、FAT、GPT、HFS、 IHEX、ISO、LZH、LZMA、MBR、MSI、NSIS、NTFS、QCOW2、RAR、RPM、SquashFS、UDF、UEFI、VDI、VHD、VMDK、WIM、XAR 和 Z。
我想问一下,如果我用7zip解压一个chm文件。我怎样才能把它打包回去?
我看到 7zip 不支持这个,那么谁支持呢?
我想获取 7zip 解压缩的文件(从 chm 文件)并重新创建一个 CHM 文件。
这可能吗?
仅当您有一些内部 Microsoft 实用程序可以执行此操作时,因为这是他们的专有格式,或者您使用 information from reverse-engineering the format.
编写自己的格式
如果您只有 CHM 文件,则没有简单的方法可以做到这一点,您需要像@Mark 提到的那样进行逆向工程。
因此您必须反编译 CHM 文件并通过 HTML Help Workshop(Microsoft 多年前创建的免费 CHM 编译器)或其他帮助创作工具再次编译。
如果您真的想开始逆向工程,HTMLHelp command-line 中介绍了反编译的第一步。搜索:使用HH.EXE反编译 CHM 帮助文件的示例。
您知道,您可以使用 7Zip 或在 Windows PC 上打开命令提示符 window 并键入以下内容:
hh.exe -decompile <target_directory> <path>\<filename>.chm
唯一具有任何附加功能的反编译器是 KeyTools,因为它可以尝试重建项目 (.hhp) 文件。如果您想重新编译帮助项目,您将需要此文件。
需要注意的一件事是 decompile/recompile 进程不是 "round-trip" 进程。帮助作者添加到原始帮助文件中的某些功能在您反编译时无法恢复,因此在您重新编译后这些功能可能不再正常工作。
在上下文相关的帮助区域尤其如此,新版本的文件可能会损坏它。
根据 7zip 文档,7zip 支持的格式有:
打包/解包:7z、XZ、BZIP2、GZIP、TAR、ZIP 和 WIM
仅解包:AR、ARJ、CAB、CHM、CPIO、CramFS、DMG、EXT、FAT、GPT、HFS、 IHEX、ISO、LZH、LZMA、MBR、MSI、NSIS、NTFS、QCOW2、RAR、RPM、SquashFS、UDF、UEFI、VDI、VHD、VMDK、WIM、XAR 和 Z。
我想问一下,如果我用7zip解压一个chm文件。我怎样才能把它打包回去? 我看到 7zip 不支持这个,那么谁支持呢? 我想获取 7zip 解压缩的文件(从 chm 文件)并重新创建一个 CHM 文件。 这可能吗?
仅当您有一些内部 Microsoft 实用程序可以执行此操作时,因为这是他们的专有格式,或者您使用 information from reverse-engineering the format.
编写自己的格式如果您只有 CHM 文件,则没有简单的方法可以做到这一点,您需要像@Mark 提到的那样进行逆向工程。
因此您必须反编译 CHM 文件并通过 HTML Help Workshop(Microsoft 多年前创建的免费 CHM 编译器)或其他帮助创作工具再次编译。
如果您真的想开始逆向工程,HTMLHelp command-line 中介绍了反编译的第一步。搜索:使用HH.EXE反编译 CHM 帮助文件的示例。
您知道,您可以使用 7Zip 或在 Windows PC 上打开命令提示符 window 并键入以下内容:
hh.exe -decompile <target_directory> <path>\<filename>.chm
唯一具有任何附加功能的反编译器是 KeyTools,因为它可以尝试重建项目 (.hhp) 文件。如果您想重新编译帮助项目,您将需要此文件。
需要注意的一件事是 decompile/recompile 进程不是 "round-trip" 进程。帮助作者添加到原始帮助文件中的某些功能在您反编译时无法恢复,因此在您重新编译后这些功能可能不再正常工作。 在上下文相关的帮助区域尤其如此,新版本的文件可能会损坏它。