转自 http://blog.youkuaiyun.com/zhoufoxcn/article/details/2213955
前段时间本人做了一个图片处理软件,免费给一些同学和朋友使用,很多人的反馈是不知道怎么用,于是本人花时间做了一个帮助手册,得到了很多好的反馈,本人准备在结合他们的反馈意见之后发布一个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文件
通过记事本查看上面文件的内容之后,如果我们以网页的标题作为索引关键词,我们会发现.hhk和.hhc,这样可以直接copy,省去很多步骤。
附:.hhp文件内容(项目文件内容)
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文件(索引文件资源)内容
< HTML >
< HEAD >
< meta name ="GENERATOR" content ="Microsoft® 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文件(内容页项目资源)内容
< HTML >
< HEAD >
< meta name ="GENERATOR" content ="Microsoft® 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 >