作者: zyl910

一、缘由

“Sandcastle Help File Builder”(简称SHFB)是一个很好用.NET 帮助文档生成工具。
但它的每个版本支持的VS版本范围有限,且官网没有明确说明它与VS版本的区别。导致经常出现“明明装了SHFB,但VS打开不了它的项目”问题。
这时只有逐个版本安装尝试了。而GitHub下载速度慢,导致要花很久时间才能找到合适的版本。于是我做了一次完整的实验,有了一些心得。

二、心得

2.1 尝试安装2个版本

最初曾经试过安装2个版本的办法——

  1. “先安装旧版本SHFB,再安装新版本SHFB”的办法无效。系统中只能存在一个SHFB版本,安装新版本后,旧版本会被覆盖掉。导致还是仅支持新版本的VS范围。
  2. “先安装旧版本SHFB,再安装新版本的vsix”的办法无效。低版本VS编译正常,高版本VS虽然能打开SHFB项目,但无法编译,提示需要升级SHFB。
  3. “先安装新版本SHFB,再安装旧版本的vsix”的办法无效。高版本VS编译正常,低版本VS虽然能打开SHFB项目,但无法编译,提示.NET版本问题等错误。
  4. “先安装旧版本SHFB,先安装新版本SHFB,再安装旧版本的vsix”的办法无效。高版本VS编译正常,低版本VS虽然能打开SHFB项目,但无法编译,提示.NET版本问题等错误。

该思路不行。看来只能挑一个版本了。

2.2 版本选择

逐个安装测试了SHFB对VS的支持范围——

  • SHFBGuidedInstaller_2015.01.12.0: 支持VS2010~VS2013 及 VS2015预览版。shfb.codeplex.com的最后版本。
  • SHFBInstaller_v2015.5.2.0: 支持VS2010~VS2015。【注意】该版本是支持VS2010的最后一个版本。
  • SHFBInstaller_v2015.7.25.0: 支持VS2013~VS2015。【注意】该版本不再支持VS2010、VS2012。
  • SHFBInstaller_v2016.4.9.0: 支持VS2013~VS2015。
  • SHFBInstaller_v2016.5.28.0: 支持VS2013~VS2015 及 VS2017预览版。
  • SHFBInstaller_v2016.9.17.0: 支持VS2013~VS2015 及 VS2017预览版。
  • SHFBInstaller_v20171.28.0: 支持VS2015 及 VS2017预览版。【注意】该版本是支持VS2013的最后一个版本。
  • SHFBInstaller_v2017.5.15.0: 支持VS2015 及 VS2017(但实测发现其对VS2017支持还有很多问题)。【注意】该版本不再支持VS2013。

目前主要是 VS2010、VS2015这2个版本的使用率较高,故应选择“SHFBInstaller_v2015.5.2.0”。

2.3 打开SHFB高版本项目文件问题

上一节说我们选定了“SHFBInstaller_v2015.5.2.0”这个版本。但当遇到高版本的SHFB项目文件时,该怎么办呢?

首先,尝试安装2个版本的办法是行不通的,详见“2.1 尝试安装2个版本”。

办法是——

  • 用文本编辑器打开shfbproj文件,将SHFBSchemaVersion的值改为“1.9.9.0”(例如将 <SHFBSchemaVersion>2015.6.5.0</SHFBSchemaVersion> 改为 <SHFBSchemaVersion>1.9.9.0</SHFBSchemaVersion> )。

修改了版本之后,一般就能用“SHFBInstaller_v2015.5.2.0”正常处理了。

参考文献

SHFBInstaller_v2015.5.2.0.zip
http://pan.baidu.com/s/1sltz2PZ

Sandcastle Help File Builder(.NET帮助文档工具)的版本选择心得——支持VS2010至VS2015,高版本项目文件问题的更多相关文章

  1. Sandcastle Help File Builder 生成NET帮助文档

    Sandcastle是微软提供的一个根据XML注释和DLL文件生成帮助文件的工具,目前是在CodePlex上的一个开源项目,可以去这里下载:Sandcastle Sandcastle生成的输出结果具有 ...

  2. 生成chm文档工具- Sandcastle -摘自网络

    Sandcastle是微软官方的文档生成工具,NDoc开发停止后,这个貌似也是唯一的一个这方面的工具.它从dll文件及其xml注释文件能够 生成完整的帮助文档,支持多种生成格式(Helpe1x:chm ...

  3. 文档生成工具Sandcastle Help File Builder

    Sandcastle Help File Builder   http://shfb.codeplex.com/

  4. 使用SHFB(Sandcastle Help File Builder)建立MSDN风格的代码文档

    使用SHFB(Sandcastle Help File Builder)建立MSDN风格的代码文档 下载地址:http://sandcastle.codeplex.com/ 下载地址2:http:// ...

  5. 使用 Sandcastle Help File Builder 制作文档

    1.下载安装 Sandcastle 程序. http://download-codeplex.sec.s-msft.com/Download/Release?ProjectName=shfb& ...

  6. Sandcastle入门:创建C#帮助文档

    Sandcastle入门:创建C#帮助文档 今天学到了一个东西:利用vs2005生成的dll/xml来生成帮助文档. 完成这个伟大任务的是Sandcastle,微软推出的类库文档编译工具. 在开始这篇 ...

  7. Sandcastle Help File Builder使用教程

    Sandcastle Help File Builder相信很多的园友用过,小弟我最近因为工作原因需要生成公司的一套SDK的帮助文档,因此找了一些资料,发现网上的资料很多,但是都不怎么完全,有些只是随 ...

  8. 使用Sandcastle 基于代码注释生成接口文档

    一. 工具下载: 1. Sandcastle:Sandcastle是微软官方的文档生成工具,下载地址:http://www.codeplex.com/Sandcastle 2. SHFBGuidedI ...

  9. API文档工具-Swagger的集成

    最近安装了API文档工具swagger,因为Github上已有详细安装教程,且安装过程中没有碰到大的阻碍,所以此文仅对这次安装做一份大致记录 相关网站 Swagger 官方地址: http://swa ...

随机推荐

  1. elementui分页点击详情返回分页样式

    updated(){ $(".el-pager").children("li").removeClass("active"); var li ...

  2. 更新pip和setuptools

    python -m pip install -U pip setuptools

  3. 比特币源码分析--C++11和boost库的应用

    比特币源码分析--C++11和boost库的应用     我们先停下探索比特币源码的步伐,来分析一下C++11和boost库在比特币源码中的应用.比特币是一个纯C++编写的项目,用到了C++11和bo ...

  4. [洛谷P1880][NOI1995]石子合并

    区间DP模板题 区间DP模板Code: ;len<=n;len++) { ;i<=*n-;i++) //区间左端点 { ; //区间右端点 for(int k=i;k<j;k++) ...

  5. java8 Stream的实现原理 (从零开始实现一个stream流)

    1.Stream 流的介绍 1.1 java8 stream介绍 java8新增了stream流的特性,能够让用户以函数式的方式.更为简单的操纵集合等数据结构,并实现了用户无感知的并行计算. 1.2  ...

  6. webstorm过期最新激活方法

    打开webstorm 注册时,在打开的License Activation窗口中选择“License server”,在输入框输入下面的网址:http://idea.iteblog.com/key.p ...

  7. SQL Server中变量的声明和使用方法

    网址:http://blog.sina.com.cn/s/blog_63d0c97a0100qpy7.html 声明局部变量语法: DECLARE @variable_name DataType 其中 ...

  8. vue中,class与style绑定

    <template> <div> <p v-bind:class="{active:isActive,'demo':Demo}">嘿嘿</ ...

  9. (转)java创建对象的步骤

    关于对象的创建过程一般是从new指令(我说的是JVM的层面)开始的(具体请看图1),JVM首先对符号引用进行解析,如果找不到对应的符号引用,那么这个类还没有被加载,因此JVM便会进行类加载过程.符号引 ...

  10. BZOJ4964 : 加长的咒语

    把$($看作$-1$,$)$看作$1$,设$a$为前缀和,则相当于找两个位置$x,y$使得$a[x]=a[y]$,且$a[x]$是$[x,y]$的区间最大值. 求出询问区间的最大值$o$,然后找到$o ...