现在的位置: 首页 > 综合 > 正文

Sandcastle生成项目文档

2014年09月05日 ⁄ 综合 ⁄ 共 3125字 ⁄ 字号 评论关闭
 

1.在命令行下打开该文档所在的路径。例如:
cd /Program Files/Sandcastle/Examples/Sandcastle
2.编译该C#文件,并从中抽取///注释:/t参数使得其编译为dll文件,/doc参数使得其同时生成包含///注释的comments.xml文档。
csc /t:library /doc:comments.xml test.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
­
­
用过NDOC的对生成CHM的项目文档应该不会陌生,可惜那丫居然不再做下去了。还好,MS公司的Sandcastle顶上来了,当然,现在很多高手们也在不断地开发类似NDOC这样的文档生成工具。但用来用去,还是这个比较喜欢,可以自动把其它语言代码也同时生成(类似MSDN)一样。可是网上对这个东东都是一些介绍性的文档,没有说如何使用,这里就把我使用的过程供大家分享,一起学习.
­
当然,我所说的这工具,是在VS。NET开发环境实现,Java好像也有同样的生成工具的。
­
­
­
­
­
Sandcastle生成的输出结果具有以下特点:
­
类似于MSDN布局的界面。
自动生成索引项、内容项目表、主题块和页面布局,提高一致性和熟悉程度。
自动生成语法宣称部分。
自动生成继承表。
代码彩色化。
提供多种风格和语言选择,终端用户可从中选择自己最喜欢的形式。
输出结果以HTML和CSS形式显示,微软承诺将来提供更多选择。
­
­
看到这样好的东西,我估计你也想试一试吧。呵呵。
­
­
使用前提:
­
在你的Solution里面的每个项目里,都会有一个Bin文件夹,同时你必须要让你的项目能生成一个XML文件.(在属性里面设置xml document file),除此之外,在每个方法或函数里面都要写上对应的注释。
­
如图:
­
怎么让项目生成一个XML document  file
­
­
­
­
代码中对应的注释:在每个方法前加三个斜杠 /// 会自动出来
­
­
­
­
­
做好了以上这两个前提准备,你的Bin文件下就应该有Sandcastle的东东了。
­
­
­
­
­
­
­
[下载]
­
废话少说,先去当一个Sandcastle再说
­
­
还好,MS免费提供了下载:
­
­
­
­
如果对这个玩艺儿有意思的话,可以去下载源码研究一下,开源嘛,不研究一下对不起脑子。
­
­
下载地址:
­
[url=https://blogs.msdn.com/sandcastle/]https://blogs.msdn.com/sandcastle/[/url]
­
­
­
­
[安装]
­
安装就不用我劳神吧,搞code不会装那实在是说不过去了吧,孩子。
­
­
­
­
­
安装好后记住安装位置
­
­
­
­
­
在安装位置中找到build_Sandcastle.bat这个批处理文件
­
Sandcastle/Examples/sandcastle/里面
­
­
­
­
­
这里提供一个xcopy.exe的系统文件,好像是用来COPY系统中的一些有用的文件的吧(放心,没毒)
­
­
­
­
­
然后,把你的项目的XML,DLL文件与xcopy.exe  build_Sandcastle.bat 放在一起
­
­
­
[使用]
­
­
­
注:我这里采用的是命令行形式,如果要使用GUI方式生成,可以去下载一个
­
SandcastleGUI.exe (v1.47 - August 2008)
­
­
打开命令窗口,进入到你的文档所在的文件夹(就是把xml dll xcopy.exe build_Sandcastle.bat 装在一起的那个)
­
­
­
­
­
­
假设我要对IDAL.DLL这个生成文档,刚运行如下命令:
­
build_Sandcastle vs2005 abc.idal
­
你就可以在这个文件夹里看到一个CHM文件跟几个相关的文件夹了
­
­
­
­
­
­
­
如要你觉得上面的操作都比较麻烦,那你可以去下载一个 Sandcastle Help File Builder
­
­
你只要根据自己的项目去设定相关属性,同样可以生出chm鸡蛋来,更令人惊喜的是可以生出一个Net的网站!
­
操作界面跟NDOC类似
­
­
­
­
­
­
生成出来的类似MSDN的文档页面
­
­
­
­
除了上面这个插件外,Sandcastle 还可以通过 DocProject for Sandcastle  与 VS2005 VS2008集合在一起,以向导方式生出相关的文档来,具体的就不再述说了。大家可以看看下面这几个链接就知道了。
­
Sandcastle Help File Builder
­
DocProject for Sandcastle
­
AjaxDoc

抱歉!评论已关闭.