该BuildingInsideVisualStudio属性提供检测项目是否在Visual Studio中建立的能力。
有什么方法来确定正在使用的Visual Studio中的版本?
该BuildingInsideVisualStudio属性提供检测项目是否在Visual Studio中建立的能力。
有什么方法来确定正在使用的Visual Studio中的版本?
使用VisualStudioVersion财产。
由于意见不格式化,这里有调查显示fsimonazzi是正确的。 2008年,VisualStudioVersion未设置。 2010年(及以上推测)是。
创建了一个项目在VS2008与之后的所述跟随加入<Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />
<Target Name="PrintVisualStudioInfo">
<Message Text="VisualStudioVersion: '$(VisualStudioVersion)'" />
</Target>
<PropertyGroup>
<CompileDependsOn>
PrintVisualStudioInfo;
$(CompileDependsOn)
</CompileDependsOn>
</PropertyGroup>
打开VS2008输出到正常。 结果:
Target PrintVisualStudioInfo:
VisualStudioVersion: ''
在VS2010结果:
PrintVisualStudioInfo:
VisualStudioVersion: '10.0'
根据这个帖子的属性存在开始与VS2012。 它在定义Microsoft.Common.targets
安装了.NET 4.5,当文件(经检查发现原来的.NET 4.0没有财产定义)。