使用Sandcastle
4.1使用平台
(1)操作系统:
Windows Server 2003; Windows XP Service Pack 2; Windows Vista;
(2)必备软件:
Microsoft .NET Framework Version 2.0
HTML Help Workshop——如果需要编译生成CHM文档(需要用到其中的hhc.exe文件)
(3)可选软件:
Visual Studio 2005
MS Help Compiler from VS SDK
4.2使用方式(可选界面)Ref[2]
(0)使用Sandcastle原始的命令行方式
(1)Sandcastle Help File Builder
它提供一个类似于NDoc的界面,允许你输入现有的NDoc项目,自动完成创建过程。
(2)SandcastleGUI
这是一个免费的Sandcastle GUI前端界面。利用它可以在图形界面操作,省去用户输入命令行的麻烦。并且具有以下扩充Ref[6]:
=============================================================================
>>自动在文档中插入MSDN文章链接
>>可以选择程序集中的某个命名空间生成文档,而不是默认的整个程序集
>>多种输出方式:网站、CHM帮助文件或输出二者
>>自定义帮助文档头部(公司LOGO以及产品名称等)
>>自定义帮助文章页脚(版权信息等)
>>在文档中插入自定义的图像
>>文档的代码实例中将C#语法高亮显示
=============================================================================
(3)Sandcastle CHM编译BAT脚本和配置实用工具
这是一个配置实用工具和批处理脚本,由它通过Sandcastle可建立MSDN形式的类文档CHM文件。
(4)DocProject
DocProject drives the Sandcastle help generation tools using the power of Visual Studio 2005/2008 and MSBuild
生成文档步骤
前提:代码文档中使用规范的///注释,具体规范查看MSDN-建议的文档注释标记(C#编程指南)。也可以参看本人另一篇介绍文章:《C#中的XML注释》。
5.0 使用命令行方式
参考文章:Ref[7]
——使用sandcastle自带的例子test.cs来生成CHM文件
==========================================================================
1.在命令行下打开该文档所在的路径。例如:
cd \Program Files\Sandcastle\Examples\Sandcastle
2.编译该C#文件,并从中抽取///注释:/t参数使得其编译为dll文件,/doc参数使得其同时生成包含///注释的comments.xml文档。
csc /t:library /doc:comments.xmltest.cs
3.运行MrefBuilder生成中间文件reflection.org
MRefBuilder test.dll /out:reflection.org
4.运行XslTransform将上述中间文件转换成xml格式(vs2005)(瑶瑶按:使用prototype请参阅Ref[7]原文)
XslTransform. /xsl:"..\..\ProductionTransforms\ApplyVSDocModel.xsl" reflection.org /xsl:"..\..\ProductionTransforms\AddFriendlyFilenames.xsl" /out:reflection.xml
5.生成主题清单
XslTransform. /xsl:..\..\ProductionTransforms\ReflectionToManifest.xsl reflection.xml /out:manifest.xml
6.生成输出目录结构(vs2005)
call ..\..\Presentation\vs2005\copyOutput.bat
7.运行BuildAssembler生成HTML主题文件
BuildAssembler /config:sandcastle.config manifest.xml
8.生成HTML help项目
XslTransform. /xsl:..\..\ProductionTransforms\ReflectionToChmProject.xsl reflection.xml /out:Output\test.hhp
9.生成中间表格内容(vs2005)
XslTransform. /xsl:..\..\ProductionTransforms\createvstoc.xsl reflection.xml /out:toc.xml
10.生成HTML help项目信息
XslTransform. /xsl:..\..\ProductionTransforms\TocToChmContents.xsl toc.xml /out:Output\test.hhc
XslTransform. /xsl:..\..\ProductionTransforms\ReflectionToChmIndex.xsl reflection.xml /out:Output\test.hhk
11.运行hhc生成CHM
hhc output\test.hhp
==========================================================================
==========================================================================
Note:7.We are providingVS 2005 transformsunder Presentation/VS2005 folder and the transforms shipped with the previous versions under Presentation/Prototype folder.
For building VS2005 format please usesandcastle.configfile fromC:\Program Files\Sandcastle\Presentation\vs2005\Configurationfolder as it uses shared content fromC:\Program Files\Sandcastle\Presentation\vs2005\Contentand transforms fromC:\Program Files\Sandcastle\Presentation\vs2005\Transforms
==========================================================================
5.1 Sandcastle Help File Builder
==========================================================================
1.首先要为项目生成一个包含注释的XML文件
在c#项目中鼠标右键点击所选的项目,选择Properties->Build项,勾选XML documentation file。设置完毕编译项目,就可以生成属于它的xml文件了。
2.打开我们已经安装好的Sandcastle Help File Builder并对它进行设置
>>点击Add按钮,选中项目生成的exe,dll,xml文件
>>保存该项目后点击Namespaces按钮,选中想要生成帮助文档的Namespace
>>设定Dependencies选项,把项目中所引用到的dll文件加载进去
>>设置HtmlHelp1xCompilerPath为HTML Help Workshop的安装路径,
>>设置SandcastlePath为Sandcastle的安装路径
3.点击顶头菜单Documentation下拉菜单中的Build Project选项