使用 Visual Studio 2015 编译 ToolsVersion 12

2023-11-22

我安装了一台新电脑并安装了VS2015。编译我当前正在处理的项目会产生一些无效代码(ILSpy 创建无法编译的源代码)。使用 ToolsVersion 12 在 VS2013 中运行良好。

日志文件告诉我 ToolsVersion 12 丢失,所以我安装了它。然而,无论我做什么或设置,它总是使用 ToolsVersion 14 进行编译。我可以手动调用MSBuild.exe随 VS2013 一起提供(使用 ToolsVersion 12)并且代码正确。做同样的事情MSBuild.exe随 VS2015 一起提供(使用 ToolsVersion 14)会导致代码不正确。所以我只需要 VS2015 即可使用 ToolSet 12。

MSDN 说:

“从 Visual Studio 2013 开始,MSBuild 工具集版本与 Visual Studio 版本号相同。MSBuild 在 Visual Studio 和命令行中默认使用此工具集,无论项目文件中指定的工具集版本如何。可以使用 /ToolsVersion 标志覆盖此行为。有关详细信息,请参阅覆盖 ToolsVersion 设置。”

使用 MSBuild 手动设置这样的效果很好,但是如何在 VS 2015 中设置它?所有环境变量都不起作用,它始终使用工具集 14 !


我将这个答案留在这里,以防它对其他人有帮助,但是它对原始海报没有帮助,因为根据@user1029883,当使用 12.0 构建工具安装 VS2015 时它不起作用(请参阅下面的 @alexandrul 的评论)而不是多个版本的 Visual Studio:抱歉。


不幸的是,似乎没有直截了当方法来做到这一点。然而,有一个巧妙的方法:

  • 设置环境变量MSBUILDLEGACYDEFAULTTOOLSVERSION
  • 确保ToolsVersion顶级属性Project所有项目文件中的元素设置为所需的ToolsVersion.

请参阅覆盖工具版本设置MSDN 页面

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

使用 Visual Studio 2015 编译 ToolsVersion 12 的相关文章

随机推荐

  • 使用仪器解决内存不足警告

    我正在尝试使用仪器来解决一些内存不足的情况 我可以看到物理内存可用监视器中的内存消耗下降到几 MB 尽管分配显示所有分配约为 3 MB 总体字节为 34 MB 自从我使用 NSOperationQueue 将一些操作移动到单独的线程后 我就
  • NHibernate无状态会话插入速度慢

    这几天我一直致力于提高 NHibernate 插入性能 我读过很多帖子 例如this one that 无状态会话每秒可以插入 1000 2000 条记录 但是 它可以插入 1243 条记录的最佳时间对我来说超过 9 秒 var sessi
  • smtp;550 访问被拒绝 - HELO 名称无效(请参阅 RFC2821 4.1.1.1)

    我正在运行 Windows Server 2008 R2 但我收到一些域拒绝的 smtp 邮件 为了测试它 我将一个文本文件放入 C inetpub mailroot Pickup 目录中 内容如下 From email protected
  • 带有双引号参数的 exec

    我想执行findWindows 命令使用exec包 但 Windows 正在做一些奇怪的转义 我有类似的东西 out err exec Command find SomeText Output 但这会引发错误 因为 Windows 正在将其
  • 将分数转换为 html 实体[重​​复]

    这个问题在这里已经有答案了 我们在数据库中存储了一些分数信息 例如3 4 5 除了进行搜索和替换之外 是否有任何内置 PHP 函数可以自动将它们转换为正确的 html 实体 您可以使用htmlentities 函数 这会将所有特殊字符替换为
  • 检测用户何时关闭软键盘

    我的视图中有一个 EditText 小部件 当用户选择 EditText 小部件时 我会显示一些说明并出现软键盘 我使用 OnEditorActionListener 来检测用户何时完成文本输入 然后关闭键盘 隐藏指令并执行某些操作 我的问
  • 有什么方法可以知道 php 脚本是否在 cli 模式下运行?

    或者反过来 有没有办法知道 php 脚本是否正在 Web 服务器内运行 http www php net manual en function php sapi name php function is cli return php sap
  • Java 客户端应用程序中的 Ajax 调用 [重复]

    这个问题在这里已经有答案了 可能的重复 如何使用 Servlet 和 Ajax 我在 Javascript 中使用以下代码来进行 Ajax 调用 function getPersonDataFromServer ajax type POST
  • 为什么 Node.js 一次只处理六个请求?

    我们有一个 Node js 服务器 它实现了 REST API 作为中央服务器的代理 而中央服务器的 REST API 略有不同 而且不幸的是不对称 我们的客户端运行在各种浏览器中 要求节点服务器从中央服务器获取任务 节点服务器从中央服务器
  • 将范围变量连接到角度指令表达式中的字符串中

    我在 Angular ng click 指令中使用作用域方法 如下所示 a obj val1 obj val2 a 这里的问题是 obj val1 和 obj val2 被解释为传递给表达式中的方法的字符串的一部分 我需要将它们作为变量进行
  • Java方法使用反射分配对象字段值

    我想知道 Java 中是否可以有类似下面的内容 public class MyClass private String name private Integer age private Date dateOfBirth constructo
  • 如何自动回答 y(kill-matching-buffers 询问我是否应该终止修改的缓冲区)?

    在 Emacs 中 如何杀死与正则表达式匹配的缓冲区 Edit 我该如何回答y自动地 kill matching buffers询问我是否应该杀死修改过的缓冲区 像这样的东西吗 defun bk kill buffers bfrRgxp i
  • 使用 React Router 进行条件渲染

    我想在顶部渲染一些带有导航的路线 而在没有任何导航的情况下渲染其他路线 如注册 登录页面 对于导航的设置 我有 const App gt
  • 从类路径中的任何位置加载资源

    我有一个简单的 java 应用程序 它从当前包加载属性文件 this getClass getResourceAsStream props properties 当我想要的属性文件位于当前包中时 这可以正常工作 但是 我想将此应用程序打包为
  • 素数生成器解释? [复制]

    这个问题在这里已经有答案了 我正在寻找一种生成素数的算法 我找到了罗伯特 威廉 汉克斯 Robert William Hanks 创作的以下一幅作品 它非常有效并且比其他算法更好 但我无法理解其背后的数学原理 def primes n Re
  • 将数组传递给 Java 方法

    如何将整个数组传递给方法 private void PassArray String arrayw new String 4 populate array PrintA arrayw private void PrintA String a
  • Java:具有接口属性的对象的 Jackson 多态 JSON 反序列化?

    我正在使用杰克逊的ObjectMapper反序列化包含接口作为其属性之一的对象的 JSON 表示形式 代码的简化版本可以在这里看到 https gist github com sscovil 8735923 基本上 我有一个班级Asset有
  • ViewPager 和 FragmentPagerAdapter 中 Fragment 的 Android 生命周期管理

    我一直在努力找出如何正确管理 Fragment 中的内容FragmentActivity with a ViewPager是 在详细介绍之前 我先对我面临的问题进行快速总结如下 我有一个FragmentActivity with a Vie
  • Android Studio 2.1 将字节码转换为 dex 时出错

    自从我将 android studio 从 2 0 更新到 2 1 后 我收到以下错误 错误 将字节码转换为 dex 时出错 原因 Dex 无法解析版本 52 字节代码 这是由于 使用 Java 8 或更高版本编译的库依赖项 如果 您正在库
  • 使用 Visual Studio 2015 编译 ToolsVersion 12

    我安装了一台新电脑并安装了VS2015 编译我当前正在处理的项目会产生一些无效代码 ILSpy 创建无法编译的源代码 使用 ToolsVersion 12 在 VS2013 中运行良好 日志文件告诉我 ToolsVersion 12 丢失