HTML Help Workshop 已经不是新鲜的东西,它取代了功能很强但看起来比较普通的' Help Workshop 4.0。HTML Help Workshop 编译之后生成扩展名为 .chm 的文件,在 Windows 中它被称为“已编译的 HTML 帮助文件”。这种文件格式在网上广为流传,被称为一种电子书籍格式。
HTML Help Workshop 的特点在于,它的每一个帮助页都是一个Web页,您可以像浏览网站一样容易地阅读 HTML 帮助文件。HTML 帮助文件甚至支持 ActiveX, JavaScrip, VBScrip 和 Dll 等。HTML帮助文件类似资源管理器的窗口的浏览方式,使用极其方便。
我相信大家都已经习惯了使用HTML帮助文件(.CHM),不再习惯使用原来的Help帮助文件(.HLP)了――用惯了 MSDN,你还想看 BCB 的帮助文档吗?所以当你再看到扩展名为.HLP文件的时候,你肯定会因为它的使用不便而将它弃之一旁……够了,就凭这些,我们也应该把 Help Wordshop 抛在一边了,让我们来学习 HTML 帮助文件的制作和使用吧。
已编译的HTML帮助文件也就常见的chw文件格式,制作过程如下(以EasyCHM为例来说明):1、在开始具体制作前,请先用Dreamweaver或者其他你所熟悉的html文件制作工具制作如下图所示5个html文件。2、打开Easy CHM,单击工具栏上的新建按钮。3、在弹出的“新建工程目录:”对话框中,单击浏览按钮,选择我们刚刚制作的html文件的目录。点击确定。4、单击上移按钮调整html文档在目录及索引中的排列顺序。5、选中目录文档,点选目录项属性按钮,在弹出的目录项属性框中更改图标为1。6、单击工具栏上的编译按钮,在弹出的“编译工程为CHM:”对话框中,更改标题为:迷你记账系统帮助,第一页为:关于迷你记账系统.html;主页改为:目录.html;保存名称更改为:迷你记账系统帮助.chm。7、单击“编译工程为CHM:”框上的CHM设置按钮,在弹出的“CHM设置:”对话框中,将自动保存记录文件项前的√去掉。8、单击“编译工程为CHM:”框上的Html API标签,将编译Html API信息项前的√去掉,单击应用按钮。9、单击“编译工程为CHM:”框上的生成CHM按钮,稍等片刻,弹出如下图所示框即表示迷你记账系统帮助.chm文件生成成功。该如何合并多个HTML 帮助文件你有没有想过,假如你单独发行了若干小游戏,并为这些小游戏写了 HTML 帮助。突然有一天,你打算把这些小游戏集合起来搞成一个“游戏乐园”,是不是要把它们的帮助文档源文件(.htm) 再拿出来编译一遍呢?添加 HTML 道是非常方便,可是那一堆目录和索引,难道需要重写吗?――天啊,人生最痛苦的事莫过于此。 不过没关系, 虽然有些时候 Microsoft 的东东的确很差劲,但这次,它想到了――提供了一个非常方便的合并(Merge) 功能,可以把目录、索引甚至全文搜索字典都合并起来。 怎么开始呢?还记得在“设置工程选项(Project Options)”一节中最后介绍的内容吗?对了,就是从这里开始的:工程选项(Option) 对话框的 Merge Files 属性页。不过在这之前我们需要新建一个 HTML 帮助工程,所有制作将在这个工程中完成。 Merge Files 属性页里只有添加(Add...) 和删除(Remove) 两个按钮,它们的作用我想不必介绍了吧。只需要在这里添加你想要合并的文件,第一步就简单的完成了。不过切记,这个合并不是真正意义上的合并――生成后的 HTML 帮助文件大小和没合并前几乎一样大。因此,发布帮助文档的时候,需要将被合并的 HTML 帮助一起发布。 现在还有一个问题,我编译后找遍了所有链接,始终打不开被合并的帮助文件啊,什么地方搞错了?不要着急,我们才刚刚完成第一步,不过做完这一步,被合并 HTML 帮助文件的索引和全文搜索字典都已经合并进来了,你没找到吗?那是你观察不仔细。 下面,我们要做的第二步是合并目录。 在刚才新建的工程中添加一个目录文件,当然,是新建的。然后右键单击空白处弹出菜单。菜单的前两项都已经在“为帮助文件添加目录(Contents)和索引(Index)”一节有介绍过了,第三项“Insert File...”才是本节的重头戏。 点击“Insert File...”菜单项,会弹出一个叫做“Include File”的对话框,选择你要合并的 HTML 帮助文件(.chm),然后……还没完,你还需要动手添加如下文字 .....chm::contents.hhc 前面的' .....chm 是你选择的文件,后面的 ::contents.hhc 是要你动手输入的。其中 contents.hhc 要根据实际你使用的目录文件名来填写,而这个目录文件是 .....chm 的,不是当前工程的。如果还没明白,看看下面注意事项的例图。 编译运行,一切正常,该合并的都合并了,从目录里就能找到被合并帮助文件中的内容。不过,这个样子好象还是有点不对劲啊――下面我来说说需要注意的地方。 第一,我们没有给这个新工程添加主题文件。有什么后果?想想你用 IE 浏览一个不存在的页面时会出现什么样的情况吧。任何一个 HTML 帮助都有一个默认页的,我们新建这个工程也不例外,虽然它合并了其它的 HTML 帮助,但是――还是没有自己的默认页啊。结论:无论如何要给它添加一个主题文件,就算是封面好了。 第二,HTML Help Workshop 在这里有一个 BUG,为免费BUG,你需要注意的第二点就是:想要目录中的并入文件节点是子某个节点的字节点,在编辑时应该让它和这个节点同层次。 有时候我们会见到一从一个帮助页中链接到另一个帮助文件的例子,比如在 MSDN 中就非常多,这就是怎么实现的呢?其实,这不是 HTML Help Workshop 的工作,而是主题文件(.htm) 的工作。需要在 HTML 文件中插入一个用打开 HTML 帮助的 ActiveX 控件,这里就不详述了。