chm无法用浏览器打开,Windows下如何把chm转换为html?

内容纲要

概述

通过调用Windows命令的decompile,可以轻松把chm 文件转换为html 文件,而且效果很好

CHM文件简介

CHM是英语“Compiled Help Manual”的简写,即“已编译的帮助文件”。CHM是微软新一代的帮助文件格式,利用HTML作源文,把帮助内容以类似数据库的形式编译储存。

CHM文件的好处就是轻量、便捷、只读等,通过目录,能很方便的定位到文件中的各个位置;但是它也有很大的缺陷,就是只能使用特定的阅读器打开,比如微软提供的HTMLHelpWorkshop(系统自带)、eTextWizard等。

为什么需要把chm转成html

但是我们在使用过程中,会经常遇到需要把CHM文件放到网站上,供用户查看,但是浏览器却不支持CHM的文件,因此就需要把CHM文件转换成html格式放到网站上。

很多程序员朋友都会遇到这样的问题,看一个离线版的帮助文档(chm文件),总会产生一个索引文件(该文件的chw文件),

而且有些chm文件在编译时遗留的问题,可能会导致一些排版无法显示的问题,很烦人;其实我们可以直接选择html版本的帮助文档,

它不会产生索引文件,而且可以用自己喜欢的浏览器打开,不会出现排版问题,下面就教大家在windows下如何将chm文件反编译为html文件。

工具准备

  • windows系统
  • cmd命令行

转换方法

打开命令行(cmd),通过decompile 命令进行CHM向HTML的转化

hh -decompile <输出文件夹路径> <要反编译的CHM文件全路径名>

注意两个文件夹路径之间有一个空格

CHM转成HTML的操作步骤

1.win+r打开命令行

2.准备好需要转换的chm文件

3.切换至需要转换成HTML格式的CHM文件所在目录,以切换到D盘Target目录为列,如图

d:
cd target

4.输入命令:

上述反编译的chm文件全路径名为:D:\Target\W3School离线手册(2016.07.15).chm

而输出文件夹路径为了方便,我直接选择该文件所在目录,然后新建一个html目录,即:D:\Target\html

完整命令如下:

//hh -decompile <输出文件夹路径> <要反编译的CHM文件全路径名>
hh -decompile D:\Target\html D:\Target\W3School离线手册(2016.07.15).chm

当然也可以使用相对路径,把DOS切换到D盘的Target,然后输入如下命令:

//hh -decompile <输出文件夹路径> <要反编译的CHM文件全路径名>
hh -decompile html W3School离线手册(2016.07.15).chm

over,找到index.html,就可以使用自己喜欢的浏览器打开啦!

CHM转HTML的注意点

  • 以上步骤随着命令的执行,可以清晰的看到当前工作目录的变化,如上图红色标注,能够很方便的指导我们的命令执行成功与否;
  • 路径尽量使用英文,因为中文可能会因为编码问题,导致乱码;
  • 这种反编译,不支持过长的文件名,因此反编译之前需要将CHM文件的名称改的简短一些,且不要有中文
  • 反编译之后的文件在本地查看的时候,可能会因为某些浏览器的跨域兼容问题(file://),导致有些功能不好用,比如目录展开之类的;但是将文件上传到服务器之后,该问题就会消失,请放心使用。
  • 使用的时候,可以根据自己的需求进行适当修改,但尽量不要随便删除反编译之后的任何文件,否则会影响页面的样式及内容的完整性。

<至此,CHM转成HTML的方法就说完了>