`
caobihole
  • 浏览: 948519 次
文章分类
社区版块
存档分类
最新评论

HTML Help WorkShop制作chm图解

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

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

1 HTML Help WorkShop运行界面


2 新建一个工程


3 是否从WinHelp项目转换


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


5 如果已经制作了hhchhkhtm文件,可以勾选上面的相应项


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]
AutoIndex
=Yes
Compatibility
=1.1orlater
Compiledfile
=DotNet.chm
Contentsfile
=TableofContents.hhc
Defaulttopic
=dotnethelpIndex.html
Displaycompileprogress
=No
Indexfile
=Index.hhk
Language
=0x804中文(中国)


[INFOTYPES]

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

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

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

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

相关推荐

Global site tag (gtag.js) - Google Analytics