Sandcastle帮助文档生成器使用介绍

转自:http://www.cnblogs.com/net515/p/3311584.htmlhtml

1、软件介绍ide

      Sandcastle是一个管理类库的文档编译器,是用于编译发布组件(Assembly)信息的一个工具,这个工具经过反射和Xslt技术,能够从dll文件及其xml注释(命令行编译时加/doc参数或vs2005设置项目属性获得)获得一个完整的帮助文档,格式能够是Html或CHM甚至是任何自定义的格式。
  Sandcastle与.NET Framework 2.0和.NET Compact Framework组合使用。Sandcastle支持本地化,并提供一个基本的命令行编译器界面和一个Visual Studio插件。
  Sandcastle中共有三个组件:MrefBuilder、Build Assembler和XslTransform。这些工具使用编译汇编代码时生成的输出结果,包括DLL文件以及XML注释文件。 
  MrefBuilder反射一个项目的汇编代码并生成一个输出文件。MrefBuilder是一个随Sandcastle安装的命令行工具。它生成的输出文件经过XslTransform命令行工具转换成一个叫作reflection.xml的文件。reflection.xml文件包含全部文档数据,但不提供显示细节。 
  MrefBuilder完成工做后,当即由Build Assembler接手处理。Build Assembler可由命令行工具BuildAssembler启动。它利用由MrefBuilder生成的数据(reflection.xml)和任何代码注释(保存在独立的XML文件中),生成按逻辑分组的HTML文件。HTML Help Compiler再利用这些HTML文件生成最终结果。 
  该工具并未限制你一次处理一个汇编。若是你须要处理几个汇编代码,你必须深刻了解Sandcastle配置文件。它是一个包含创建帮助文件主题所需步骤的XML文件。
  Sandcastle生成的输出结果具备如下特色: 
Ø         相似于MSDN布局的界面。 
Ø         自动生成索引项、内容项目表、主题块和页面布局,提升一致性和熟悉程度。
Ø         自动生成语法宣称部分。 
Ø         自动生成继承表。 
Ø         代码彩色化。 
Ø         提供多种风格和语言选择,终端用户可从中选择本身最喜欢的形式。 
Ø         输出结果以HTML和CSS形式显示,微软承诺未来提供更多选择。
2、软件使用
  软件的使用方式大体有如下5种:
(1)使用Sandcastle原始的命令行方式
(2)Sandcastle Help File Builder
(3)SandcastleGUI
(4)Sandcastle CHM编译BAT脚本和配置实用工具
(5)DocProject 
 文章以第(2)种为例,介绍Sandcastle的使用
   一、关于生成文档代码注释的规范:
  在源代码文件中,具备规范格式的注释可用于指导工具Sandcastle.msi根据这些注释和它们后面的源代码元素生成 XML。使用这类语法的注释称为文档注释 (documentation comment)。这些注释后面必须紧跟用户定义类型(如类、委托或接口)或者成员(如字段、事件、属性或方法)。XML 生成工具称做文档生成器 (documentation generator)。由文档生成器产生的输出称为文档文件 (documentation file)。文档文件可做为文档查看器 (documentation viewer) 的输入;文档查看器Sandcastle是用于生成类型信息及其关联文档的某种可视化显示的工具。
  新的代码注释规范须要使用以三个斜杠 (///) 开始注释,这些注释后面必须紧跟它们所注释的用户定义类型(如类、委托或接口)或者成员(如字段、事件、属性或方法).对注释解说须要使用有效的xml标记。
部分标记以下: 
   
二、下载并安装
  --- Sandcastle    http://sandcastle.codeplex.com/   //原始
  --- SHFB(Sandcastle Help File Builder)   http://shfb.codeplex.com/  //文章咱们要用到的。
 ①若是以前安装过其它版本,请先卸载后再装。
 ②下载完成后解压,我使用的为SHFBGuidedInstaller_1970版本,获得以下
  
 
打开SandcastleInstaller.exe进入安装界面
 
 
安装至关简单,在连网的环境下,须要的组件会自动提示下载安装。测试时,除了MAML Schema IntelliSense 及MAML Snippet Files选择了跳过没有安装之外,其它全根据提示安装上了。(由于不明白那两个东西是作什么的)。
 
安装完成后,即可以在开始菜单中找到,打开程序,以下
 
 
a.打开软件后首先新建解决方案,注意不要建在桌面等位置,不然生成时会报错。
b.解决方案建成后,在Project Explorer 中右击 Documentation Sources 上右击添加须要生成帮助文档的dll文件。图中①处为我添加的须要生成帮助文档的dll文件
c.底下Content Layout1.content为生成的帮助文档的样式,彻底能够不要。
d.选择要生成帮助文档的格式,如图中②处,我要生成html格式的帮助文档。
e.其它设置默认便可,过会底下会作介绍。
f.点击③处开始生成,如图
 
g.生成完成后,会看到提示:
Build completed successfully at 09-09-2013 11:47 下午.  Total time: 00:01:11.3906
便可在Sandcastle解决方案目录下看到Help文件夹,便是生成的帮助文件。
 
h.若是不能编译生成CHM文档或者生成CHM时报错,则须要安装HTML Help Workshop(须要用到其中的hhc.exe文件)
 
三、集成到Visual Studio中
  a.回到Sandcastle安装程序目录 ,打开 InstallResources文件夹,看到如下三个文件
双击最下边的vsix文件,反应一下子会弹出以下错误,即表示安装成功了:
 
b.如今在解决方案中添加项目,以下
c.选择Documentation-->Sandcastle Help File Builder Project-->肯定
d.双击Project Properties 能够设置项目的属性
属性个性化定制主要属性有:
   1.生成属性设置,如须要生成什么类型的文档(可选chm、网站站点等)
   2.文档内容属性设置,如对命名空间的解说。(命名空间在C#代码中是不能够有注释的,故在此能够设置,也能够在项目中新建一个类NamespaceDoc.cs其代码为:
复制代码
1 namespace  TestForHelp
2   {
3     ///<summary>
4    ///These are the namespace comments for New <c>TestForHelp</c>
5    ///</summary>
6    [System.Runtime.CompilerServices.CompilerGeneratedAttribute()]
7       classNamespaceDoc
8        {  }
9   }
复制代码

 

   3.文档文件的属性设置:如页眉、页脚、版权信息。
e.一样,右击 Documentation Sources 上右击添加须要生成帮助文档的dll文件,可一次添加多个
f.在项目名上(如DocumentationHelp)右击,添加--新建项,可指定项目模板
 
g.全部设置完成后,生成项目,便可获得想要的帮助文档,一样保存在项目下Help文件夹下。
h.再次提醒,若是不能编译生成CHM文档或者生成CHM时报错,则须要安装HTML Help Workshop(须要用到其中的hhc.exe文件)

 参考资料:
 3. 使用 Sandcastle 生成 chm 帮助文档 (使用Sandcastle原始的命令行方式)
 4.软件的帮助文档,讲得很全,但全是英文。
相关文章
相关标签/搜索