作者: 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. Raspberry 音乐播放器omxplayer安装

    首先需要安装的是omxplayer播放器的依赖的库文件: wget http://pexpect.sourceforge.net/pexpect-2.3.tar.gz tar xzf pexpect- ...

  2. 如何将.SQL文件的数据导入到Mysql的数据库中

    一.用cmd的调试环境导入.sql文件中的数据: WinR键打开cmd输入: MySQL -u root -p 进入MySQL后MySQL>use DR;   MySQL> source  ...

  3. 最短路(bellman)-hdu2066

    题目链接:https://vjudge.net/problem/HDU-2066 题目描述: 代码实现: #include <cstdio> #include <cstring> ...

  4. UVA 796 Critical Links(模板题)(无向图求桥)

    <题目链接> 题目大意: 无向连通图求桥,并将桥按顺序输出. 解题分析: 无向图求桥的模板题,下面用了kuangbin的模板. #include <cstdio> #inclu ...

  5. BOM 和 DOM

    目录 一.BOM 1.什么是BOM 2. 浏览器内容划分 归BOM管的: 归DOM管的: 3. BOM常见方法 二.DOM 1 什么是DOM 2. DOM常见方法 一.BOM 1.什么是BOM BOM ...

  6. 堆优化dijstra

    因为spfa没事就被卡一卡,所以堆优化dijstra就显得很重要,在最短路或者其模型里边,最少有一条边是没有被更新过的,也就是它是最短的,同理从这个点开始也有一条边最短,所以每次就找最短的然后松弛操作 ...

  7. P1074 靶形数独

    P1074 靶形数独正着搜80分,完全倒置95分,完全倒置后左右再倒置,就会A掉,到时候脑洞要大一些. #include<iostream> #include<cstdio> ...

  8. Python中list、字典、字符串的讲解

    python 的list讲解  计算机中的数组是从0开始的 list中的下标.角标.索引说的都是一个 数组都是从0开始的. stus=["刘",“王”,“张”] stus2=[] ...

  9. JavaIO流中的拷贝

    JavaIO流中对数据的操作尤为重要,掌握了基本的拷贝操作,才能将各种数据源的操作联系起来. 先来看看对文件夹的拷贝吧: /** * 利用递归实现文件夹的拷贝操作 * 分析:判断 * 是文件:调用拷贝 ...

  10. linux命令基础三

    使用cat命令进行文件的纵向合并使用cat命令实现文件的纵向合并: 例如:使用cat命令将baby.age.baby.kg和baby.sex这三个文件纵向合并为baby文件的方法:cat baby.a ...