HTML Help WorkShop制作chm图解

一位做共享软件做得很成功的同行说过:“一个好的共享软件,首先操作要简单容易上手,其次一定附带一个详尽的帮助手册。”可见,对于一个软件来说,帮助文件的重要性。不过大部分程序人员(包括我)都忽略了帮助文件的重要性,都认为自己做的软件相当简单,一看就会,殊不知我们是一个连底层都了解的开发人员。

前段时间本人做了一个图片处理软件,免费给一些同学和朋友使用,很多人的反馈是不知道怎么用,于是本人花时间做了一个帮助手册,得到了很多好的反馈,本人准备在结合他们的反馈意见之后发布一个Realease版本。在使用的过程中,我使用了微软提供的HTML Help WorkShop这个软件,可惜是英文的,为了方便广大对英语不是很熟悉的朋友,本人写了一份制作图解,希望对大家有帮助。
HTML Help WorkShop制作chm图解_第1张图片 
图1 HTML Help WorkShop运行界面

HTML Help WorkShop制作chm图解_第2张图片
图2 新建一个工程

HTML Help WorkShop制作chm图解_第3张图片
图3 是否从WinHelp项目转换

HTML Help WorkShop制作chm图解_第4张图片
图4 设置项目文件的保存位置

HTML Help WorkShop制作chm图解_第5张图片
图5 如果已经制作了hhc、hhk和htm文件,可以勾选上面的相应项

HTML Help WorkShop制作chm图解_第6张图片
图6 新建帮助文件工程向导结束

HTML Help WorkShop制作chm图解_第7张图片
图7 新建工程向导结束之后的界面

HTML Help WorkShop制作chm图解_第8张图片
图8 contens选项卡

HTML Help WorkShop制作chm图解_第9张图片
图9 添加一个内容页

HTML Help WorkShop制作chm图解_第10张图片
图10 指定内容页的位置

HTML Help WorkShop制作chm图解_第11张图片
图11 选取内容页

HTML Help WorkShop制作chm图解_第12张图片
图12 填写标题(对比图9)

HTML Help WorkShop制作chm图解_第13张图片
图13 Index选项卡

HTML Help WorkShop制作chm图解_第14张图片
图14 添加Index向导第一步

HTML Help WorkShop制作chm图解_第15张图片
图15 添加Index向导第二步

HTML Help WorkShop制作chm图解_第16张图片
图16 填写完成之后的状况

HTML Help WorkShop制作chm图解_第17张图片
图17 指定chm文件的起始页

HTML Help WorkShop制作chm图解_第18张图片
图18 编译生成chm文件

 

说明:在制作过程中用到了.hhp、.hhk和.hhc三种文件,它们的作用分别如下:
.hhp:保存项目文件配置的有关内容,如便以后生成chm的语言以及打开chm的起始页;
.hhk:保存关键词索引目录的内容,其实是一个html文件,可以用记事本等打开查看和编辑。
.hhc:保存内容页的配置。其实是一个html文件,可以用记事本等打开查看和编辑。

通过记事本查看上面文件的内容之后,如果我们以网页的标题作为索引关键词,我们会发现.hhk和.hhc,这样可以直接copy,省去很多步骤。

附:.hhp文件内容(项目文件内容)

[ OPTIONS ]
Auto Index
= Yes
Compatibility
= 1.1  or later
Compiled file
= DotNet.chm
Contents file
= Table of Contents.hhc
Default topic
= dotnethelpIndex.html
Display compile progress
= No
Index file
= Index.hhk
Language
= 0x804 中文(中国)


[ INFOTYPES ]

Index.hhk文件(索引文件资源)内容

<! DOCTYPE HTML PUBLIC "-//IETF//DTD HTML//EN" >
< HTML >
< HEAD >
< meta  name ="GENERATOR"  content ="Microsoft&reg; HTML Help Workshop 4.1" >
<!--  Sitemap 1.0  -->
</ HEAD >< BODY >
< UL >
< LI >   < OBJECT  type ="text/sitemap" >
        
< param  name ="Name"  value ="首页" >
        
< param  name ="Local"  value ="dotnethelpIndex.html" >
        
</ OBJECT >
    
< LI >   < OBJECT  type ="text/sitemap" >
        
< param  name ="Name"  value ="C#调用API" >
        
< param  name ="Local"  value ="dotnethelpC#调用API.html" >
        
</ OBJECT >
    
< LI >   < OBJECT  type ="text/sitemap" >
        
< param  name ="Name"  value ="C#调用API详解" >
        
< param  name ="Local"  value ="dotnethelpC#调用API详解.html" >
        
</ OBJECT >
    
< LI >   < OBJECT  type ="text/sitemap" >
        
< param  name ="Name"  value ="C#中调用Windows API时的数据类型对应关系" >
        
< param  name ="Local"  value ="dotnethelpC#中调用Windows API时的数据类型对应关系.html" >
        
</ OBJECT >
    
< LI >   < OBJECT  type ="text/sitemap" >
        
< param  name ="Name"  value ="自己用C#做屏保" >
        
< param  name ="Local"  value ="dotnethelp自己用C#做屏保.html" >
        
</ OBJECT >
    
< LI >   < OBJECT  type ="text/sitemap" >
        
< param  name ="Name"  value ="基于C#实现用于显示照片的屏保" >
        
< param  name ="Local"  value ="dotnethelp基于C#实现用于显示照片的屏保.html" >
        
</ OBJECT >
    
< LI >   < OBJECT  type ="text/sitemap" >
        
< param  name ="Name"  value ="NHibernate 小纸条" >
        
< param  name ="Local"  value ="dotnethelpNHibernate 小纸条.html" >
        
</ OBJECT >
    
< LI >   < OBJECT  type ="text/sitemap" >
        
< param  name ="Name"  value ="用Nhibernate怎么实现数据的添加、删除、修改简单程序" >
        
< param  name ="Local"  value ="dotnethelp用Nhibernate怎么实现数据的添加、删除、修改简单程序.html" >
        
</ OBJECT >
    
< LI >   < OBJECT  type ="text/sitemap" >
        
< param  name ="Name"  value ="VS2005打包时加入卸载功能" >
        
< param  name ="Local"  value ="dotnethelpVS2005打包时加入卸载功能.html" >
        
</ OBJECT >
    
< LI >   < OBJECT  type ="text/sitemap" >
        
< param  name ="Name"  value ="VS2005项目的安装与布署" >
        
< param  name ="Local"  value ="dotnethelpVS2005项目的安装与布署.html" >
        
</ OBJECT >
    
< LI >   < OBJECT  type ="text/sitemap" >
        
< param  name ="Name"  value ="VS 2005中安装包的制作" >
        
< param  name ="Local"  value ="dotnethelpVS 2005中安装包的制作.html" >
        
</ OBJECT >
    
< LI >   < OBJECT  type ="text/sitemap" >
        
< param  name ="Name"  value ="使用VS2005制作安装包" >
        
< param  name ="Local"  value ="dotnethelp使用VS2005制作安装包.html" >
        
</ OBJECT >
    
< LI >   < OBJECT  type ="text/sitemap" >
        
< param  name ="Name"  value ="安装程序时读取路径的问题" >
        
< param  name ="Local"  value ="dotnethelp安装程序时读取路径的问题.html" >
        
</ OBJECT >
    
< LI >   < OBJECT  type ="text/sitemap" >
        
< param  name ="Name"  value ="iexpress的作用及使用方法" >
        
< param  name ="Local"  value ="dotnethelpiexpress的作用及使用方法.html" >
        
</ OBJECT >
    
< LI >   < OBJECT  type ="text/sitemap" >
        
< param  name ="Name"  value ="把.NET程序部署到没有安装.NET Framwork的机器上" >
        
< param  name ="Local"  value ="dotnethelp把.NET程序部署到没有安装.NET Framwork的机器上.html" >
        
</ OBJECT >
    
< LI >   < OBJECT  type ="text/sitemap" >
        
< param  name ="Name"  value ="VS2005怎么制作安装包" >
        
< param  name ="Local"  value ="dotnethelp初学者问一下,VS2005怎么制作安装包.html" >
        
</ OBJECT >
    
< LI >   < OBJECT  type ="text/sitemap" >
        
< param  name ="Name"  value ="日志记录组件[Log4net]详细介绍" >
        
< param  name ="Local"  value ="dotnethelp日志记录组件[Log4net]详细介绍.html" >
        
</ OBJECT >
    
< LI >   < OBJECT  type ="text/sitemap" >
        
< param  name ="Name"  value ="HTML Help WorkShop帮助手册" >
        
< param  name ="Local"  value ="dotnethelpHTML Help WorkShop帮助手册.html" >
        
</ OBJECT >
</ UL >
</ BODY ></ HTML >

Table of Contents.hhc文件(内容页项目资源)内容

<! DOCTYPE HTML PUBLIC "-//IETF//DTD HTML//EN" >
< HTML >
< HEAD >
< meta  name ="GENERATOR"  content ="Microsoft&reg; HTML Help Workshop 4.1" >
<!--  Sitemap 1.0  -->
</ HEAD >< BODY >
< OBJECT  type ="text/site properties" >
    
< param  name ="ImageType"  value ="Folder" >
</ OBJECT >
< UL >
    
< LI >   < OBJECT  type ="text/sitemap" >
        
< param  name ="Name"  value ="首页" >
        
< param  name ="Local"  value ="dotnethelpIndex.html" >
        
</ OBJECT >
    
< LI >   < OBJECT  type ="text/sitemap" >
        
< param  name ="Name"  value ="C#调用API" >
        
< param  name ="Local"  value ="dotnethelpC#调用API.html" >
        
</ OBJECT >
    
< LI >   < OBJECT  type ="text/sitemap" >
        
< param  name ="Name"  value ="C#调用API详解" >
        
< param  name ="Local"  value ="dotnethelpC#调用API详解.html" >
        
</ OBJECT >
    
< LI >   < OBJECT  type ="text/sitemap" >
        
< param  name ="Name"  value ="C#中调用Windows API时的数据类型对应关系" >
        
< param  name ="Local"  value ="dotnethelpC#中调用Windows API时的数据类型对应关系.html" >
        
</ OBJECT >
    
< LI >   < OBJECT  type ="text/sitemap" >
        
< param  name ="Name"  value ="自己用C#做屏保" >
        
< param  name ="Local"  value ="dotnethelp自己用C#做屏保.html" >
        
</ OBJECT >
    
< LI >   < OBJECT  type ="text/sitemap" >
        
< param  name ="Name"  value ="基于C#实现用于显示照片的屏保" >
        
< param  name ="Local"  value ="dotnethelp基于C#实现用于显示照片的屏保.html" >
        
</ OBJECT >
    
< LI >   < OBJECT  type ="text/sitemap" >
        
< param  name ="Name"  value ="NHibernate 小纸条" >
        
< param  name ="Local"  value ="dotnethelpNHibernate 小纸条.html" >
        
</ OBJECT >
    
< LI >   < OBJECT  type ="text/sitemap" >
        
< param  name ="Name"  value ="用Nhibernate怎么实现数据的添加、删除、修改简单程序" >
        
< param  name ="Local"  value ="dotnethelp用Nhibernate怎么实现数据的添加、删除、修改简单程序.html" >
        
</ OBJECT >
    
< LI >   < OBJECT  type ="text/sitemap" >
        
< param  name ="Name"  value ="VS2005打包时加入卸载功能" >
        
< param  name ="Local"  value ="dotnethelpVS2005打包时加入卸载功能.html" >
        
</ OBJECT >
    
< LI >   < OBJECT  type ="text/sitemap" >
        
< param  name ="Name"  value ="VS2005项目的安装与布署" >
        
< param  name ="Local"  value ="dotnethelpVS2005项目的安装与布署.html" >
        
</ OBJECT >
    
< LI >   < OBJECT  type ="text/sitemap" >
        
< param  name ="Name"  value ="VS 2005中安装包的制作" >
        
< param  name ="Local"  value ="dotnethelpVS 2005中安装包的制作.html" >
        
</ OBJECT >
    
< LI >   < OBJECT  type ="text/sitemap" >
        
< param  name ="Name"  value ="使用VS2005制作安装包" >
        
< param  name ="Local"  value ="dotnethelp使用VS2005制作安装包.html" >
        
</ OBJECT >
    
< LI >   < OBJECT  type ="text/sitemap" >
        
< param  name ="Name"  value ="安装程序时读取路径的问题" >
        
< param  name ="Local"  value ="dotnethelp安装程序时读取路径的问题.html" >
        
</ OBJECT >
    
< LI >   < OBJECT  type ="text/sitemap" >
        
< param  name ="Name"  value ="iexpress的作用及使用方法" >
        
< param  name ="Local"  value ="dotnethelpiexpress的作用及使用方法.html" >
        
</ OBJECT >
    
< LI >   < OBJECT  type ="text/sitemap" >
        
< param  name ="Name"  value ="把.NET程序部署到没有安装.NET Framwork的机器上" >
        
< param  name ="Local"  value ="dotnethelp把.NET程序部署到没有安装.NET Framwork的机器上.html" >
        
</ OBJECT >
    
< LI >   < OBJECT  type ="text/sitemap" >
        
< param  name ="Name"  value ="VS2005怎么制作安装包" >
        
< param  name ="Local"  value ="dotnethelp初学者问一下,VS2005怎么制作安装包.html" >
        
</ OBJECT >
    
< LI >   < OBJECT  type ="text/sitemap" >
        
< param  name ="Name"  value ="日志记录组件[Log4net]详细介绍" >
        
< param  name ="Local"  value ="dotnethelp日志记录组件[Log4net]详细介绍.html" >
        
</ OBJECT >
    
< LI >   < OBJECT  type ="text/sitemap" >
        
< param  name ="Name"  value ="HTML Help WorkShop帮助手册" >
        
< param  name ="Local"  value ="dotnethelpHTML Help WorkShop帮助手册.html" >
        
</ OBJECT >
</ UL >
</ BODY ></ HTML >
分享到:

你可能感兴趣的:(HTML Help WorkShop制作chm图解)