2012-08-13 13 views

答えて

6

VisualStudioVersionプロパティを使用します。

+0

VisualStudioVersion: '$(VisualStudioVersion)' "/> PrintVisualStudioInfo; $(CompileDependsOn) VS2008の出力を標準にしました。結果: 対象PrintVisualStudioInfo: VisualStudioVersion: '' VS2010結果に : PrintVisualStudioInfo: VisualStudioVersion:'10 .0' – WaffleSouffle

6

コメントはフォーマットされていないので、fsimonazziが正しいことを示す調査がここにあります。 2008年、VisualStudioVersionは設定されていません。 2010年(おそらくそれを上回る)それがそうです。

<Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />後に追加された次にVS2008でプロジェクトを作成:

<Target Name="PrintVisualStudioInfo"> 
    <Message Text="VisualStudioVersion: '$(VisualStudioVersion)'" /> 
</Target> 
<PropertyGroup> 
    <CompileDependsOn> 
    PrintVisualStudioInfo; 
    $(CompileDependsOn) 
    </CompileDependsOn> 
</PropertyGroup> 

回さVS2008出力ノーマルまで。結果:VS2010結果に

Target PrintVisualStudioInfo: 
    VisualStudioVersion: '' 

PrintVisualStudioInfo: 
    VisualStudioVersion: '10.0' 
5

this postによるとプロパティはVS2012で始まる存在します。 .NET 4.5がインストールされている場合(元の.NET 4.0にはプロパティが定義されていないことが確認されます)、Microsoft.Common.targetsファイルで定義されています。 <メッセージテキスト=」 <ターゲット名= "PrintVisualStudioInfo">: `<インポートプロジェクト= "$(MSBuildToolsPath)\ Microsoft.CSharp.targets"/>`後に次を追加してVS2008でプロジェクトを作成し

関連する問題