当我们开发好一个通信库的时候,我们希望给这个通信库配备一个帮助文档,最好的方式,就是有一个离线的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帮助文件教程的更多相关文章

  1. Arcgis api 离线部署

    Arcgis api 离线部署 修改 文件一(init.js)位置:arcgis_js_v317_api\arcgis_js_api\library\3.17\3.17\init.js 将[HOSTN ...

  2. Struts2 API的chm格式帮助文档制作教程

    Struts2 API的chm格式帮助文档制作教程 在SSH三个框架中,Struts2的API文档是最难做的,这里所说的格式是chm格式的,chm的格式很方便,Hibernate API文档和Spri ...

  3. 通过 File API 使用 JavaScript 读取文件

    原文地址:http://www.html5rocks.com/zh/tutorials/file/dndfiles/ 简介 HTML5 终于为我们提供了一种通过 File API 规范与本地文件交互的 ...

  4. Easy CHM使用简明教程

    近日整理硬盘,发现下载有许多DOC.JPEG.HTML等 格式的学习资料,也包括一些电子书资料:而其中的DOC.HTML等资料在学习浏览时显得很不方便,不同格式的文件需要使用不同的打开方式.近而发现电 ...

  5. 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 ...

  6. 史上最全的maven pom.xml文件教程详解

    <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/20 ...

  7. 纯windows下制作变色龙引导安装U盘教程

    原创教程:纯windows下制作变色龙引导安装U盘教程 支持Mavericks和Yosemite 支持白苹果 目标:windows下制作带 Chamelon变色龙引导的黑苹果安装U盘,支持PC机引导安 ...

  8. JAVA JDK 1.6 API中文版.CHM打开chm提示,“ 已取消到该网页的导航”

    JAVA  JDK 1.6 API中文版.CHM打开chm提示,“ 已取消到该网页的导航” silent fish 装了win7后,打开chm文件,发现很多在xp系统打开正常的chm文件竟然出现问题, ...

  9. ArcGIS制作tpk离线压缩包

    ArcGIS制作tpk离线压缩包 tpk是什么的缩写,对应的中文名称是? 什么叫tpk文件? 缓存切片? 切片类型:紧凑型与稀疏型.   一.目前自己使用的在ArcMap中制作tpk压缩包 1.首先打 ...

随机推荐

  1. vue watcher errors

    vue watcher errors Error in callback for watcher TypeError: Cannot set property of undefined" n ...

  2. You, Me & SVG!

    You, Me & SVG! SVG refs code-school-you-me-svg https://www.youtube.com/watch?v=a8Y0L5q63y8 https ...

  3. Flutter & App

    Flutter & App Android & iOS https://flutter.dev/docs/deployment/flavors https://flutter.dev/ ...

  4. taro 滚动事件

    taro 滚动事件 taro scroll bug ScrollView https://nervjs.github.io/taro/docs/components/viewContainer/scr ...

  5. Bootstrap5 多级dropdown

    <div class="dropdown"> <a class="btn dropdown-toggle"> Dropdown link ...

  6. js 使用socket-io发送文件

    更多 前端 import { Component, OnInit, ViewChild, ElementRef } from '@angular/core'; import { MediaDevice ...

  7. js bese64转化为blob使用FormData上传

    原文 工作示例 <!DOCTYPE html> <html lang="en"> <head> <meta charset="U ...

  8. NGK算力市场,不止有动静态收益还有SPC空投!

    随着数字货币交易的火热,云算力挖矿也悄然崛起.越来越多的用户开启云算力挖矿,以获取更多的收益.相较于传统的矿机挖矿,用户通过购买算力进行云挖矿,节省了购买矿机以及维护的成本.另一方面,也降低了安全风险 ...

  9. 新手如何通过内存和NGK DeFi Baccarat进行组合投资?

    区块链市场在2020年迎来了大爆发,资本市场异常火热.无论是内存,还是DeFi,都无疑是这个火爆的区块链市场中的佼佼者.通过投资内存和DeFi,很多投资者都已经获取了非常可观的收益,尝到了资本市场带来 ...

  10. 开发Microsoft Teams选项卡应用安全注意事项

    我们都知道,为了方便广大的开发人员快速开发Microsoft Teams选项卡应用,微软提供了一个JS SDK,你可以通过这里 https://docs.microsoft.com/en-us/jav ...