使用Sandcastle
使用平台
()操作系统
Windows Server ; Windows XP Service Pack ; Windows Vista;
()必备软件
Microsoft NET Framework Version
HTML Help Workshop——如果需要编译生成CHM文档(需要用到其中的hhcexe文件)
()可选软件
Visual Studio
MS Help Compiler from VS SDK
使用方式(可选界面)Ref[]
()使用Sandcastle原始的命令行方式
()Sandcastle Help File Builder
它提供一个类似于NDoc的界面允许你输入现有的NDoc项目自动完成创建过程
()SandcastleGUI
这是一个免费的Sandcastle GUI前端界面利用它可以在图形界面操作省去用户输入命令行的麻烦并且具有以下扩充Ref[]
=============================================================================
>>自动在文档中插入MSDN文章链接
>>可以选择程序集中的某个命名空间生成文档而不是默认的整个程序集
>>多种输出方式网站CHM帮助文件或输出二者
>>自定义帮助文档头部(公司LOGO以及产品名称等)
>>自定义帮助文章页脚(版权信息等)
>>在文档中插入自定义的图像
>>文档的代码实例中将C#语法高亮显示
=============================================================================
()Sandcastle CHM编译BAT脚本和配置实用工具
这是一个配置实用工具和批处理脚本由它通过Sandcastle可建立MSDN形式的类文档CHM文件
()DocProject
DocProject drives the Sandcastle help generation tools using the power of Visual Studio / and MSBuild
生成文档步骤
前提代码文档中使用规范的///注释具体规范查看MSDN建议的文档注释标记(C#编程指南)也可以参看本人另一篇介绍文章《C#中的XML注释》
使用命令行方式
参考文章Ref[]
——使用sandcastle自带的例子testcs来生成CHM文件
==========================================================================
在命令行下打开该文档所在的路径例如
cd \Program Files\Sandcastle\Examples\Sandcastle
编译该C#文件并从中抽取///注释/t参数使得其编译为dll文件/doc参数使得其同时生成包含///注释的commentsxml文档
csc /t:library /doc:commentsxmltestcs
运行MrefBuilder生成中间文件
MRefBuilder testdll /out:
运行XslTransform将上述中间文件转换成xml格式(vs)(瑶瑶按使用prototype请参阅Ref[]原文)
XslTransform /xsl:\\ProductionTransforms\ApplyVSDocModelxsl /xsl:\\ProductionTransforms\AddFriendlyFilenamesxsl /out:reflectionxml
生成主题清单
XslTransform /xsl:\\ProductionTransforms\ReflectionToManifestxsl reflectionxml /out:manifestxml
生成输出目录结构(vs)
call \\Presentation\vs\copyOutputbat
运行BuildAssembler生成HTML主题文件
BuildAssembler /config:nfig manifestxml
生成HTML help项目
XslTransform /xsl:\\ProductionTransforms\ReflectionToChmProjectxsl reflectionxml /out:Output\testhhp
生成中间表格内容(vs)
XslTransform /xsl:\\ProductionTransforms\createvstocxsl reflectionxml /out:tocxml
生成HTML help项目信息
XslTransform /xsl:\\ProductionTransforms\TocToChmContentsxsl tocxml /out:Output\testhhc
XslTransform /xsl:\\ProductionTransforms\ReflectionToChmIndexxsl reflectionxml /out:Output\testhhk
运行hhc生成CHM
hhc output\testhhp
==========================================================================
==========================================================================
Note:We are providingVS transformsunder Presentation/VS folder and the transforms shipped with the previous versions under Presentation/Prototype folder
For building VS format please nfigfile fromC:\Program Files\Sandcastle\Presentation\vs\Configurationfolder as it uses shared content fromC:\Program Files\Sandcastle\Presentation\vs\Contentand transforms fromC:\Program Files\Sandcastle\Presentation\vs\Transforms
==========================================================================
Sandcastle Help File Builder
==========================================================================
首先要为项目生成一个包含注释的XML文件
在c#项目中鼠标右键点击所选的项目选择Properties>Build项勾选XML documentation file设置完毕编译项目就可以生成属于它的xml文件了
打开我们已经安装好的Sandcastle Help File Builder并对它进行设置
>>点击Add按钮选中项目生成的exedllxml文件
>>保存该项目后点击Namespaces按钮选中想要生成帮助文档的Namespace
>>设定Dependencies选项把项目中所引用到的dll文件加载进去
>>设置HtmlHelpxCompilerPath为HTML Help Workshop的安装路径
>>设置SandcastlePath为Sandcastle的安装路径
点击顶头菜单Documentation下拉菜单中的Build Project选项
(或直接使用快捷键Ctrl+Shift+B)编译即可生成所需的帮助文档
该文档的默认输出路径在项目所在目录的Help文件夹下当然也可以更改Sandcastle Help File Builder中的设置自己设定它的输入路径==========================================================================
SandcastleGUI
)生成各项目的*dll和*xml文件(在vs中编译选项设置具体前面 Sandcastle Help File Builder的生成步骤中已提及)
)将*dll和*xml文件放在一个目录A下将所有要附加的图片(比如类图和时序图)放在另一个并行的目录B下(注意不能有子文件夹)
)启动SandcastleGUI设置
Directory that contains assemblies to document项选择目录A
Output directory项选择一个空文件夹如C
Directory to include in documentation项选择目录B
其它如C#语法是否包含C#例子生成文档类型(website或chm)等选项根据需要填
)设置完成后最好Save settings因为可能常常要用到然后Start documenting
)等待生成完成后就可以在C目录下找到chm文件了
Sandcastle CHM编译BAT脚本和配置实用工具
DocProject
参考文章Ref[]
——使用MSDN上包含有标准注释的XML文档生成帮助文件示例
==========================================================================
先编写一个类库这里使用的是MSDN上包含有标准注释的XML文档示例
打开下载到的工程文件 打开XMLsamplecs 可以看到各种注释的详细解释
使用DocProject方式 在确保安装了DocProject后 为工程添加新项目
==>==>==>==>
编译DocProject前 务必使你所要生成文档的类库编译输出注释的XML文件 详细方法请查看在Visual Studio中生成XML文档示例
编译DocProject项目 等待十几分钟(似乎有点慢 即使类库很小) 就会在该项目下看到HTML版和CHM版的文档了