制作API离线chm帮助文件教程

当我们开发好一个通信库的时候,我们希望给这个通信库配备一个帮助文档,最好的方式,就是有一个离线的chm版本的API文档,这样别人在使用的时候,就可以清楚看到命名空间、类的结构,同时也能看到每个方法和属性的结构。
刚好最近在制作xktComm通信库的API帮助文档,借此机会,跟大家介绍一下如何制作API文档。
1、首先要将制作的dll写好注释,在类库项目属性中,勾选XML文档文件,这样就会生成该dll对应的说明文档xml文件。

2、然后需要下载一个软件SHFB,下载地址在github上:https://github.com/EWSoftware/SHFB/releases

选择最新版下载即可。
如果github访问不了,可以通过公众号【dotNet工控上位机】获取,回复关键词:API制作套装
获取到的SHFB软件目录如下所示:

3、打开InstallResources文件夹,找到SandcastleHelpFileBuilder.msi,双击安装,安装过程很简单,一路Next即可。

4、安装完成后,在跳到InstallResources文件夹同级目录,找到SandcastleInstaller.exe,双击安装。

5、安装过程会弹出两次下图的提示框,点击是,继续到下一步。

6、安装完成后,在开始菜单中的最近添加中,找到Sandcastle Help File Builder GUI,点击打开。

7、打开之后,如果出现下面的错误提示,说明需要安装一个插件——BuildTools,获取方式,在前面获取的API制作套装中,有一个名称为BuildTools_Full.exe的程序,双击安装,如果没有错误,这一步跳过即可。

8、成功打开后,新建一个项目,名称自己定义,添加第一步中准备好的dll及其对应的xml文档。
9、然后通过左侧的向导进行一些相关的设置,首先是Build页面,主要设置文档生成类型、语言及框架版本。

10、切换到第二栏Help File,设置相关的Title、版本号及相关版权信息。

11、点击Documentation下的Build Project按钮,生成项目。
12、如果出现下图错误,错误代码BE0037,需要安装一个插件——htmlhelp,对应的安装包已经放到API制作套装中,获取方式,公众号后台回复:API制作套装。

13、安装完成后,重新Build Project,如果仍然出现错误,错误代码BE0065,需要再安装一个插件——vs_buildtools,对应的安装包已经放到API制作套装中,获取方式,公众号后台回复:API制作套装。

14、不出意外的话,应该可以生成,生成结果如下:

15、这样我们就生成了一个API的帮助文档,我们可以对照Log,看看有哪些警告,因为可能有一些地方我们的注释并不完整。
16、有个地方值得注意,当我们将所有的方法和类都添加注释后,我们生成的时候,可能还会有警告,大致意思是命名空间并没有注释,命名空间的注释在代码里是添加不了的,需要在Sandcastle Help File Builder GUI软件中添加,点击左侧导航栏的Summaries,点击Edit Namespace Summaries,进入界面后,通过点击选择命名空间,右击一下,就可以输入所选命名空间的注释说明,全部输入完成后,点击Close即可。

16、下面是最终生成的chm帮助文档。【图片有误,后台回复API,查看完整版】

制作API离线chm帮助文件教程的更多相关文章
- Arcgis api 离线部署
Arcgis api 离线部署 修改 文件一(init.js)位置:arcgis_js_v317_api\arcgis_js_api\library\3.17\3.17\init.js 将[HOSTN ...
- Struts2 API的chm格式帮助文档制作教程
Struts2 API的chm格式帮助文档制作教程 在SSH三个框架中,Struts2的API文档是最难做的,这里所说的格式是chm格式的,chm的格式很方便,Hibernate API文档和Spri ...
- 通过 File API 使用 JavaScript 读取文件
原文地址:http://www.html5rocks.com/zh/tutorials/file/dndfiles/ 简介 HTML5 终于为我们提供了一种通过 File API 规范与本地文件交互的 ...
- Easy CHM使用简明教程
近日整理硬盘,发现下载有许多DOC.JPEG.HTML等 格式的学习资料,也包括一些电子书资料:而其中的DOC.HTML等资料在学习浏览时显得很不方便,不同格式的文件需要使用不同的打开方式.近而发现电 ...
- 01 选择 Help > Install New Software,在出现的对话框里,点击Add按钮,在对话框的name一栏输入“ADT”,点击Archive...选择离线的ADT文件,contact all update ....千万不要勾选点击Add按钮,在对话框的name一栏输入“ADT”,点击Archive...选择离线的ADT文件,contact all update ....千万不要勾
引言 好久没碰过android,今天重新搭建了一次环境,遇到的问题记录下载.共以后使用. 安装 软件的软件有jdk+eclipse+adt+sdk 主要记录安装adt和sdk的过程,注意,adt和sd ...
- 史上最全的maven pom.xml文件教程详解
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/20 ...
- 纯windows下制作变色龙引导安装U盘教程
原创教程:纯windows下制作变色龙引导安装U盘教程 支持Mavericks和Yosemite 支持白苹果 目标:windows下制作带 Chamelon变色龙引导的黑苹果安装U盘,支持PC机引导安 ...
- JAVA JDK 1.6 API中文版.CHM打开chm提示,“ 已取消到该网页的导航”
JAVA JDK 1.6 API中文版.CHM打开chm提示,“ 已取消到该网页的导航” silent fish 装了win7后,打开chm文件,发现很多在xp系统打开正常的chm文件竟然出现问题, ...
- ArcGIS制作tpk离线压缩包
ArcGIS制作tpk离线压缩包 tpk是什么的缩写,对应的中文名称是? 什么叫tpk文件? 缓存切片? 切片类型:紧凑型与稀疏型. 一.目前自己使用的在ArcMap中制作tpk压缩包 1.首先打 ...
随机推荐
- 手工数据结构系列-C语言模拟队列 hdu1276
#include <stdio.h> #include <stdlib.h> #define init_size 1000 typedef struct { int head, ...
- 阿里巴巴java开发手册(2020版)
阿里巴巴java开发手册(2020版) 2020版 链接: pan.baidu.com/s/1Zls_FUBK- 密码: titz 2019版 链接: pan.baidu.com/s/1cvCVQvj ...
- 如何在github实现 github pages (暨个人blog) websites for you and your projects.
http://xgqfrms.github.io/xgqfrms/ 步骤如下: 1.GitHub Pages https://pages.github.com/ 2.Generate a site, ...
- Web 前端如何一键开启上帝模式
Web 前端如何一键开启上帝模式 God Mode document.designMode = `on`; refs https://www.cnblogs.com/xgqfrms/tag/desig ...
- 编程术语 All In One
编程术语 All In One js 名词,术语 函数 函数签名 一个函数签名 (或类型签名,或方法签名) 定义了 函数 或 方法 的输入与输出. 一个签名可以包括: 参数 及参数的 类型 一个返回值 ...
- HTTPS All In One
HTTPS All In One HTTPS & web security HTTPS Hypertext Transfer Protocol Secure HTTPS is an exten ...
- Redis 大 key 问题 & 问题分析 & 解决方案
Redis 大 key 问题 & 问题分析 & 解决方案 Redis 什么是 Redis 大 key 单个key 存储的 value 很大 hash, set,zset,list 结构 ...
- leetcode & Mock Interview
leetcode & Mock Interview https://leetcode.com/interview/ xgqfrms 2012-2020 www.cnblogs.com 发布文章 ...
- super fast sort algorithm in js
super fast sort algorithm in js sort algorithm Promise.race (return the fast one) Async / Await // c ...
- HTML5 stream video player
HTML5 stream video player Aliplayer https://player.alicdn.com/aliplayer/index.html https://help.aliy ...