其他版本的Visual Studio的全局配置文件是不是Microsoft.Cpp.Win32.user不清楚,但是Visual Studio 2013以上的版本是使用的同一个文件,所以多个VS之间是公用的一个全局配置文件,为了让不同的VS版本使用不同的文件,需要在Microsoft.Cpp.Win32.user文件中加入判断VS版本的条件:PlatformToolsetVersion
比如VS2013和VS2019配置boost库,VS2013和VS2019的库用不同的boost版本,配置如下所示:
<?xml version="1.0" encoding="utf-8"?>
<Project DefaultTargets="Build" ToolsVersion="12.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<ImportGroup Label="PropertySheets">
</ImportGroup>
<PropertyGroup Label="UserMacros" />
<PropertyGroup>
<IncludePath Condition="$(PlatformToolsetVersion)=='120'">D:\Boost\boost155;$(IncludePath)</IncludePath>
<LibraryPath Condition="$(PlatformToolsetVersion)=='120'">D:\Boost\boost155\msvc120_32;</LibraryPath>
</PropertyGroup>
<PropertyGroup>
<IncludePath Condition="$(PlatformToolsetVersion)=='142'">D:\Boost\boost171;$(IncludePath)</IncludePath>
<LibraryPath Condition="$(PlatformToolsetVersion)=='142'">D:\Boost\boost171\msvc142_32;$(LibraryPath)</LibraryPath>
</PropertyGroup>
<ItemDefinitionGroup>
<ClCompile>
<AdditionalIncludeDirectories>%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
</ClCompile>
<Link>
<AdditionalDependencies Condition="$(PlatformToolsetVersion)=='120'">%(AdditionalDependencies)</AdditionalDependencies>
<AdditionalDependencies Condition="$(PlatformToolsetVersion)=='142'">%(AdditionalDependencies)</AdditionalDependencies>
</Link>
</ItemDefinitionGroup>
<ItemGroup />
</Project>
其中120表示VS2013的版本号,142表示VS2019的版本号。