使用HTML Help Workshop编译成CHM文件需要如下三个文件,
分别以hhp,hhc,hhk为文件后缀名。
hhp:CHM工程文件,CHM目标文件属性参数在这里配置.
hhc,列表文件,确定目标文件中左侧树形列表中"目录"选项卡下的内容.
hhk,索引文件,确定目标文件中左侧树形列表中"索引"选项卡下的内容.

[hhp文件]
hhp几乎就是一个标准的ini文件.分为三个小节Option,Windows,Files.
典型的配置文件(hhp)结构如下:test.hhp

[OPTIONS]
Compatibility=1.1 Or later
Default window=Main
Default font=宋体,9,1
Contents file=test.hhc
Index file=test.hhk
Default topic=Htm\FAQ.htm
Display compile progress=Yes
Title=帮助文档
Full-text search=Yes
Language=0X804 中文(中国)[WINDOWS]
Main=,"test.hhc","test.hhk",,,,,,,0x20,0xB4,0x104E,[80,60,720,540],0x0,0x0,,,,,0[FILES]
FAQ.htm
test1.htm
test2.htm

稍微解释下:

Default window=Main:默认的显示模式,这里是主页面

Default font=宋体,9,1:默认的字体

Contents file=test.hhc:内容文件

Index file=test.hhk:索引文件

Display compile progress=Yes:是否显示编译过程

Full-text search=Yes:是否全文搜索

Language=0X804 中文(中国):默认语言

[hhk文件]test.hhk:

<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML//EN">
<HTML>
<HEAD><meta name="GENERATOR" content="Microsoft@ HTML Help Workshop 4.1">
</HEAD>
<BODY>
<UL><LI><OBJECT type="text/sitemap"><param name="Name" value="Blog1"><param name="Local" value="Htm\test1.htm"></OBJECT><LI><OBJECT type="text/sitemap"><param name="Name" value="Blog2"><param name="Local" value="Htm\test2.htm"></OBJECT>
</UL>
</BODY>
</HTML>

[hhc文件] test.hhc:

<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML//EN">
<HTML>
<HEAD>
<meta name="GENERATOR" content="Microsoft@ HTML Help Workshop 4.1">
<HEAD>
<BODY>
<OBJECT type="text/site properties"><param name="Window Styles" value="0x237">
<OBJECT>
<UL><LI><OBJECT type="text/sitemap"><param name="Name" value="FAQ"><param name="Local" value="Htm\FAQ.html"></OBJECT><UL><LI> <OBJECT type="text/sitemap"><param name="Name" value="Blog1"><param name="Local" value="Htm\test1.html"><param name="ImageNumber" value="13"></OBJECT><LI><OBJECT type="text/sitemap"><param name="Name" value="Blog2"><param name="Local" value="Htm\test2.html"><param name="ImageNumber" value="13"></OBJECT></UL>
</UL>
</BODY>
</HTML>

一般<UL></UL>代表一级节点,子节点表示如下:
      <LI> <OBJECT type=\"text/sitemap\">
               <param name=\"Name\" value=\"数据库服务器\">
               <param name=\"Local\" value=\"HTML\\全部对象.htm\">
               <param name=\"ImageNumber\" value=\"13\">
              </OBJECT>

[编译]

  public string hhcFile = @"C:\Program Files\HTML Help Workshop\hhc.exe";//hhc.exe文件位置,windows自带的,一般是这个路径public string _defaultTopic = "";//默认的页面private bool Compile(){string _chmFile = startPath + @"\test.chm";//chm文件存储路径Process helpCompileProcess = new Process();  //创建新的进程,用Process启动HHC.EXE来Compile一个CHM文件try{//判断文件是否存在并不被占用try{string path = _chmFile;  //chm生成路径if (File.Exists(path)){File.Delete(path);}}catch(Exception e){throw new Exception("文件被打开!");}ProcessStartInfo processStartInfo = new ProcessStartInfo();processStartInfo.WindowStyle = ProcessWindowStyle.Hidden;processStartInfo.FileName = hhcFile; //调入HHC.EXE文件 processStartInfo.Arguments = "\"" + GetPathToProjectFile() + "\"";//获取空的HHP文件processStartInfo.UseShellExecute = false;helpCompileProcess.StartInfo = processStartInfo;helpCompileProcess.Start();helpCompileProcess.WaitForExit(); //组件无限期地等待关联进程退出if (helpCompileProcess.ExitCode == 0){MessageBox.Show(new Exception().Message);return false;}}finally{helpCompileProcess.Close();}return true;}

[参考]http://www.cnblogs.com/Dotaer/archive/2012/08/02/2619854.html

转载于:https://www.cnblogs.com/AspDotNetMVC/archive/2012/11/11/2764978.html

使用HTML Help Workshop将HTML转为CHM相关推荐

  1. 关于TXT转CHM的完整解决方式

    为什么要转CHM? 有些书,TXT的资源非常好找,而CHM的资源非常难找(先不论PDF格式的,只是话说PDF格式的没有一个书签文件夹看起来也非常难受) 而CHM格式在左側有一个文件夹结构,我最喜欢这个 ...

  2. markdown 文件如何实现 chm 文件打包

    需要借助2个工具LME和hhw,有不清楚的可以下面评论,7*24小时在线解答问题,也可以加博主微信 首先借助 Markdown To CHM(LME) 工具将Markdown文件,编译成chm工程文件 ...

  3. 手动创建简单CHM帮助文件

    CHM是英语"Compiled Help Manual"的简写,即"已编译的帮助文件".这是一个HTML格式的帮助文档,源文件就是HTML文件以及jpg.gif ...

  4. 简单介绍如何制作.chm文件(以Java API文档为例)

    简单介绍如何制作.chm文件--以将官方的Java API文档制作成.chm文件为例 1. 下载Java API 文档 2. 如何制作成.chm文件 (1)使用CHMWriter制作 (2)使用别的软 ...

  5. C#生成CHM文件(转)

    HTML Help Workshop介绍:微软出品的HTML Help WorkShop制作chm文件的最佳工具. 本文,我们将用编程的方法来实现将html文件编译成CHM文件.在开始编程之前,我们有 ...

  6. Sandcastle入门:创建C#帮助文档

    Sandcastle入门:创建C#帮助文档 使用Sandcastle 4.1使用平台 (1)操作系统: Windows Server 2003; Windows XP Service Pack 2; ...

  7. 如何不写一个字完成详细设计说明书(Java体系)

    前言 程序员最痛苦的几件事:1.别人不写文档,2.别人不写注释,3.写文档,4.写注释.上一篇博客聊到了这个梗,但要让程序员硬着头皮做一样,相信99%的人会选写注释而不是写文档.毕竟注释还是程序中的一 ...

  8. HTML Help Workshop制作chm帮助文件和在应用程序中的调用

    最近在使用微软公司提供的HTML   Help   Workshop工具包 制作chm帮助文件, 现在总结如下:     一.制作前的HTML文件准备工作 由于chm帮助文件是基于HTML文件特征的, ...

  9. 发布CHM文档生成器 可替代 HTML Help Workshop,有全部C#源代码

    CHM文档生成器 现在的程序很多配备CHM格式的帮助文件,一般的开发者使用 HTML Help Workshop 来定义CHM文档,但操作不甚方便,而CHM文档生成器就可用来很方便的编辑CHM文档结构 ...

  10. 用html制作chm,用HTML Help Workshop制作chm.doc

    用HTML Help Workshop制作chm 厦瘩没诅涎冶勇耽仪烦虾屏轴与鸵陷伐次基财案撼才陀斌力族恍需皂莱焙投纂罐网诫芬懊恢樟悟冲扇乌艘备阻浮吗况慌敌檀晴檬昧姚帘贰亲曹执萤夏肌邮筏甭拓笆癣锤扁岿 ...

最新文章

  1. 编译phonetisaurus时configure找不到openfst的问题解决
  2. new二维数组的几种方法
  3. sdut 2139BFS
  4. (Spring)自动装配bean
  5. 揭密微信《跳一跳》小游戏那些外挂
  6. 《现代操作系统》读书笔记之——进程调度(二)
  7. 高效的企业测试-结论(6/6)
  8. 云计算概况及第一个Azure程序
  9. phthon学习笔记(3)
  10. oracle的安装与卸载
  11. jfreechart折线图y轴刻度值_Python matplotlib绘制折线图
  12. 《对比Excel,轻松学习Python数据分析》读书笔记------Pandas入门
  13. 如何查看 Ubuntu 版本和其他系统信息
  14. Linux14.04安装Mysql Linux公社
  15. SAP S4 FI后台详细配置教程- PART4 (科目及税费相关配置篇)
  16. 基于Qt的智能车载系统嵌入式项目(正点原子IMX6ULL开发板)
  17. 迦瓦栈队 团队第六周项目总结
  18. otg usb 定位_教你简单认识OTG与OTG线
  19. 记录一个换了intel+主板换成 AMD 5800X之后蓝屏问题
  20. iPhone 双卡双待时代即将来临?

热门文章

  1. 微软亚洲研究院:NLP将迎来黄金十年
  2. TF2.0—tf.keras.layers.Activation
  3. pandas——pd.DataFrame.iloc()
  4. 时间序列-Auto-ARIMA模型
  5. MySQL必知必会(二)
  6. 网站运营之比较和差异化
  7. 我的J2EE成功之路:实战Ajax,JSP,Struts 2, Spring,Hibernate
  8. 博文视点大讲堂第15期:猎头揭秘
  9. ROC曲线和AUC 原理与实现——Python实战
  10. 5.1傅里叶展开,傅里叶级数推导--非常棒