The BuildingInsideVisualStudio property provides the ability to detect whether a project is building inside Visual Studio.
Is there any way to determine which version of Visual Studio is being used ?
Since comments aren't formatted, here's investigation showing fsimonazzi is correct. On 2008, VisualStudioVersion is NOT set. On 2010 (and up presumably) it is.
Created a project in VS2008 with the following added after <Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />
:
<Target Name="PrintVisualStudioInfo">
<Message Text="VisualStudioVersion: '$(VisualStudioVersion)'" />
</Target>
<PropertyGroup>
<CompileDependsOn>
PrintVisualStudioInfo;
$(CompileDependsOn)
</CompileDependsOn>
</PropertyGroup>
Turned VS2008 output up to Normal. Result:
Target PrintVisualStudioInfo:
VisualStudioVersion: ''
On VS2010 Result:
PrintVisualStudioInfo:
VisualStudioVersion: '10.0'
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With