HTML Help WorkShop制作chm图解 .

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

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


图2 新建一个工程


图3 是否从WinHelp项目转换


图4 设置项目文件的保存位置


图5 如果已经制作了hhc、hhk和htm文件,可以勾选上面的相应项


图6 新建帮助文件工程向导结束


图7 新建工程向导结束之后的界面


图8 contens选项卡


图9 添加一个内容页


图10 指定内容页的位置


图11 选取内容页


图12 填写标题(对比图9)


图13 Index选项卡


图14 添加Index向导第一步


图15 添加Index向导第二步


图16 填写完成之后的状况


图17 指定chm文件的起始页


图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 >
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
经导师精心指导并认可、获 98 分的毕业设计项目!【项目资源】:微信小程序。【项目说明】:聚焦计算机相关专业毕设及实战操练,可作课程设计与期末大作业,含全部源码,能直用于毕设,经严格调试,运行有保障!【项目服务】:有任何使用上的问题,欢迎随时与博主沟通,博主会及时解答。 经导师精心指导并认可、获 98 分的毕业设计项目!【项目资源】:微信小程序。【项目说明】:聚焦计算机相关专业毕设及实战操练,可作课程设计与期末大作业,含全部源码,能直用于毕设,经严格调试,运行有保障!【项目服务】:有任何使用上的问题,欢迎随时与博主沟通,博主会及时解答。 经导师精心指导并认可、获 98 分的毕业设计项目!【项目资源】:微信小程序。【项目说明】:聚焦计算机相关专业毕设及实战操练,可作课程设计与期末大作业,含全部源码,能直用于毕设,经严格调试,运行有保障!【项目服务】:有任何使用上的问题,欢迎随时与博主沟通,博主会及时解答。 经导师精心指导并认可、获 98 分的毕业设计项目!【项目资源】:微信小程序。【项目说明】:聚焦计算机相关专业毕设及实战操练,可作课程设计与期末大作业,含全部源码,能直用于毕设,经严格调试,运行有保障!【项目服务】:有任何使用上的问题,欢迎随时与博主沟通,博主会及时解答。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值