首页 > 解决方案 > 可以重新构建 CHM 文件以便所有 html 文件都是本地的吗?

问题描述

有没有办法获取一个已经编译的 .chm 文件,然后重新构建它,以便将它的 html 文件存储在本地?我无权访问生成 chm 文件的安装程序。问题是我试图在工作计算机上查看 chm 文件,该计算机要么阻止来自 chm 文件本身的所有 Web 请求,要么 chm 文件试图对 html 文档发出 get 请求,并通过防火墙发出请求网络端口。我不知道它到底是什么,但我可以在我的个人电脑上完美地查看 chm 文件。我想重新编译或重建 chm 文件,以便它不再需要请求收集 html 文件。我想将所有 html 文件存储在 chm 文件中。我很想知道是否有人知道这样做的方法。顺便说一句,没有“解锁”

和我看到的很像。。。

谢谢!

标签: documentationdocumentation-generationchm

解决方案


简短的故事 - 我认为这是一个众所周知的安全问题,即 CHM 文件的内容被阻止。如果先解决了这个问题,就不必反编译了。

您看到的空白屏幕可能是您工作计算机上的问题,因为 CHM 位于公司网络驱动器上。

另一个原因可能是您没有PsTools.zip在下载后第一次取消阻止(您提到“...文件属性中没有其他解决方案中引用的“取消阻止”按钮”)。因此,首先搜索 ZIP 文件的解锁按钮。

但有时您只有 CHM 输出文件,没有人可以找到源文件。

如果你真的决定反编译有不同的方法。并非总是可以恢复您需要的所有文件和数据,尤其是项目文件 *.hhp。*.hhc (TOC) 和在以前使用的情况下 *.hhk (index) 被反编译。

请注意 - 所有 HTML 文件都已存储在 CHM 文件中,并且仅在非常特殊的用例中作为外部文件添加。如果您决定使用纯 HTML 格式,您将失去所有 CHM 的功能,如 TOC(目录)、索引和搜索。

hh.exe 是 Windows 中 CHM 文件的查看器,不仅可以显示 CHM 文件,还可以提取 CHM 文件。无界面 - 只需将其输入命令提示符或 PowerShell 窗口并根据需要进行修改。

  hh.exe -decompile <target_directory> <path>\<filename>.chm

有关更多信息,请查看:

反编译 CHM


推荐阅读