Visual Studio中的默认平台工具集

时间:2017-07-19 13:28:26

标签: visual-c++ visual-studio-2015 vcxproj

我安装了VS 2015和VS 2010.我在VS 2010中安装了VCxproj和.sln文件。

现在我要构建.sln文件。我已经在VS 2015中打开了这个项目。但是当我构建它时,使用VS 2010进行构建。

我希望当我使用VS 2010构建时,它应该使用VS 2010构建,如果我打开VS 2015,它应该使用VS 2015构建。

我没有在.vcxproj文件中定义任何工具集。它选择默认工具集。我可以找到哪些以及如何覆盖默认工具集?

请注意,应该使用命令行完成。我不想改变.VCXproj。

任何人都有任何想法吗?

3 个答案:

答案 0 :(得分:0)

这是一个项目级别的设置。您可以为VS2010创建一个项目,为VS2015创建一个项目。您还需要2个解决方案文件。

Platform Toolset

答案 1 :(得分:0)

使用msbuild进行构建时,可以在命令行中进行设置,请参见以下问题:Can I set the platform toolset from the command line when building with VS2010's msbuild?

答案 2 :(得分:-1)

我有完全相同的问题。此外,请注意,有一个名为“从父项或项目默认值继承”的条目。

您和我(以及许多其他人)想要做的就是 - 继承默认值,然后在一个地方更改默认

您应该可以通过将用户宏添加到Microsoft.Cpp.Win32.user等属性页来执行此操作,例如:

DefaultWin32FlatformToolset = v140 <or some other value>

除非这不起作用 - 可能是评估问题的顺序。

执行此操作的方法(针对VS2015)是在Platform.Default.PropsMSBuild/v4.0/Platforms/Win32/中修改x64/。首先,找到这一行:

<PlatformToolset Condition="'$(PlatformToolset)' == ''">v100</PlatformToolset>

然后将v100更改为您要使用的平台。 然后修改所有项目文件(一次)以使用'从父级继承......'作为平台工具集。

我保存了2个版本的文件并根据我想要的工具集进行了复制/重命名。 (您必须退出并重新启动VS2015)。