制作Net程序的帮助文档--总结
一、工具的准备
目前,一般采用Sandcastle Help File Builder工具来制作.Net程序帮助文档,该工具主要是利用Xml文档里的信息以及DLL文件来生成完整的帮助文档。在Visual Studio中,使用三个/的注释内容才会被写入XML文档里,而两个/的注释是不会被写入的。
- 建议了解一下:XML注释标签讲解
1、GhostDoc--VS代码注释插件
VS本身提供了自动生成XML注释的快键方式,比如在成员函数上面敲入///,VS会自动一种注释框架,但是这种注释里是不包含关于成员函数的说明文字,我们需要手动添加这些信息。有没有自动帮我们生成一些基本信息的呢?这个答案是肯定的,GhostDoc就是这么一款能帮助生成简单的说明文字的工具,它还能生成一些参数类型的附加说明。告诉你们一个好消息,GhostDoc是免费的,我们不用99就能将其带回家。
注意:GhostDoc所生成说明信息的准确率,是与我们的函数命名规范性有关,因此根据这准确率,在一定程度上也能反映出我们函数命名是否规范哦,当然我们也可以有自己的风格,不要太拘泥。
- GhostDoc的使用http://www.cnblogs.com/zpq521/archive/2011/02/21/1959389.html
- GhostDoc下载地址:http://submain.com/products/ghostdoc.aspx
2、Sandcastle Help File Builder --文档生成工具
主角终于上场了,Sandcastle Help File Builder 的前身是微软的Sandcastle,Sandcastle之前被认为是NDoc的继承者,由于各种原因,Sandcastle现在已经停止维护了,取而代之的是Sandcastle Help File Builder ,它是由另外一位牛人在维护。
Sandcastle是通过提取dll文件及其xml注释文件来生成完整的帮助文档,同时还支持多种生成格式(Helpe1x:chm, Helper2x:Hxs, Website,HelperView),结合新发布的Sandcastle Help File Builder可视化工具,整个生成过程十分简单,而且SHFB工具看起来很强大,不仅能够直接配置生成文档的各个属性,而且还支持很灵活的扩展设置,为我们提供完美的.NET类库文档成为一个可能。
如果想使用Sandcastle Help File Builder工具,我们还必须安装Sandcastle、Microsoft HTML Help。
必备软件下载地址:
- Sandcastle:http://www.codeplex.com/Sandcastle
- Sandcastle Help File Builder:http://shfb.codeplex.com/
- Microsoft HTML Help:http://msdn.microsoft.com/en-us/library/ms669985(VS.85).aspx
可选
- SandcastleGUI:http://www.inchl.nl/SandcastleGUI/ (之前一直使用的另外一个Sandcastle生成工具)
- 用Sandcastle和Help Integration Wizard把文档集成到Visual Studio
二、 制作帮助文档
具体制作过程,我就不写了,要充分利用已有资源,尽量不要重复做重复的事情,网上有教程已经将其写的很明白了。 还是写一下大致步骤吧。
1、打开Sandcastle Help File Builder 新建项目
2、为项目添加材料
选中Documentation Sources右键选择“Add Documentation Source…”,一般选择添加工程文件(.csproj),即可。
3、设置主要的属性
一般是设置Build和Help File。
- Build主要是检查.NET框架版本,如果与开发不配套时,需要修改。
- Help File才是我们需要设置的重点,比如文档名,文档语言,版权等。
4、生成文档
当需要的属性设置完后,点击Build按钮,就会自动帮我们生成chm文档。
如果生成失败的话,最好看看Build Output中的提示信息,查找是哪些原因导致chm文档生成失败。
具体的详情请见:
说明一些注意事项。
事项一:
如果是C#的工程,需要把工程的属性-->生成-->Xml文档文件选中。如果是其他工程的话,只要属性里面包含Xml Document Fiel,我们就勾选上。如下图:
事项二:
如果生成的chm文件内容不显示,如下图
我这里出现这种情况主要是chm文件的路径中包含有“#”特殊字符所造成的,注意当chm文件的路径中含有“#”“%”等字符时,chm文件能够打开,但将无法显示。
此方法参照:chm电子书显示“此程序无法显示网页”的完美解决办法
制作Net程序的帮助文档--总结的更多相关文章
- [工具推荐]制作基于Dash的本地文档方便搜索文档api和内容
[版权声明]:本文章由danvid发布于http://danvid.cnblogs.com/,如需转载或部分使用请注明出处 最近在看es的文档,发现查起api来真的很麻烦,很多现在开源的文档都没有查询 ...
- 通过程序校验xml文档学习笔记
校验xml文档,可以通过程序来校验,利用一段js代码即可. 各行代码的含义已经写出,运行这个html文件,检验如下xml代码: 结果如下: 如果xml文档出现错误: 结果如下: 其中,obj.asyn ...
- 如何制作dll库的API文档,自动生成微软风格的chm文件 Sandcastle Help File Builder 使用方法
当你开发了一个库的时候,就需要给库开发一个api文档,微软提供了一个C#库的自动生成工具.我在使用的过程中记录了相关的信息,以供大家学习和查阅,如有不正之处,欢迎指出. 首先先下载一个软件,下载地址在 ...
- 运用Edraw为WPF应用程序嵌入Office文档的方法总结
具体描述了运用Edraw Office Viewer Component为WPF应用长须嵌入MS Word,Excel以及Power Point的方法. 打开Visual Studio,并创建一个新的 ...
- 制作chm格式的帮助文档
学习java的人都用过jdk帮助文档,借助工具我们也可以自己生成chm格式的帮助文档, 原文:http://www.cnblogs.com/shenliang123/archive/2012/04/2 ...
- 应用程序写Xml文档
主要用到CreateElement.CreateTextNode.CreateComment.AppendChild.InsertAfter方法 代码如下: XmlDocument document ...
- .Net程序帮助文档制作
一,准备工作 1,首先介绍一款VS的代码注释插件GhostDoc 你也许认为我们在代码中敲入///就能自动生成xml注释,但这种注释是没有说明文字的.而GhostDoc可以生成一些简单的说明文字,如果 ...
- Dash文档制作教程
前言 什么是Dash 面向程序员的文档库(Mac) 代码片段管理工具 这是强烈推荐给每天在各种API文档中摸爬滚打的程序员们的神器. 为什么要自己制作文档 官方的源中没有相关文档 文档在离线下体验更好 ...
- MFC单文档视图程序简介
在视图应用程序中,应用程序的数据由文档对象代表,数据的视图由视图对象代表.MFC的Cdocument类是文档对象的基类,Cview类是视图对象的基类.应用程序的主窗口,其操作功能在MFC的Cframe ...
随机推荐
- Jquery Datatables 动态列名
Datatables中文网:http://dt.thxopen.com/index.html 尝试: <table id="sp_table" class="dis ...
- window7电脑设置好了,却无法远程?
设置远程连接: 步骤:右键[我的电脑]-->[属性] 点击[远程设置],然后设置如下: 在 cmd 中 通过 [ipconfig]命令查看IP: 以上设置好了,发现仍无法远程?解决办法如下: 电 ...
- composer 常用命令
composer list 列出所有可用的命令 composer init 初始化 composer.json文件(就不劳我们自己费力创建啦),会要求输入一些信息来描述我们当前的项目,还会要求输入依赖 ...
- 【原创】javascript——prototype与__proto__
一定要注意这个概念:javascript世界里,万物皆对象, function是对象,prototyp也是对象. 新建构造函数,并实例 var Person = function(){} var ...
- 如何在ubuntu下使用stage3d的硬件加速
最近想尝试一下心动的新游戏深渊,但是由于公司的电脑是ubuntu的,只要进游戏就提示说没有stage3d的硬件加速,于是google了一下,发现这么一篇文章 http://phoronix.com/f ...
- Winfrom 如何安全简单的跨线程更新控件
来源:http://www.cnblogs.com/rainbowzc/archive/2010/09/29/1838788.html 由于多线程可能导致对控件访问的不一致,导致出现问题.C#中默认是 ...
- 【转】Android Camera(五)使用Camera功能 AREA的理解
http://blog.csdn.net/think_soft/article/details/7998478 使用Camera功能 大多数的Camera功能都是使用Camera.Parameters ...
- PowerShell常用的.Net 、COM对象(New-Object、Assembly)、加载程序集
#新建随机数对象实例:$Ran = New-Object System.Random$Ran.NextDouble() 有时候,要使用的实例的类保存在独立的库文件中,PowerShell默认未加载,会 ...
- 一次向svn中增加所有新增文件 svn add all new files
svn st | grep '^\?' | tr '^\?' ' ' | sed 's/[ ]*//' | sed 's/[ ]/\\ /g' | xargs svn add
- Java基础知识强化之IO流笔记28:BufferedOutputStream / BufferedInputStream(字节缓冲区流) 之BufferedOutputStream写出数据
1. BufferedOutputStream / BufferedInputStream(字节缓冲区流)的概述 通过定义数组的方式确实比以前一次读取一个字节的方式快很多,所以,看来有一个缓冲区还是非 ...