Jak sprawdzić jakiej wersja clr była używana podczas kompilacji programu?
RuntimeEnvironment.GetSystemVersion()
coś podobnego do tego tylko że to podaj podczas uruchomienia a mi trzeba podczas kompilacji.
0
0
eloziomm napisał(a)
Jak sprawdzić jakiej wersja clr była używana podczas kompilacji programu?
RuntimeEnvironment.GetSystemVersion()
coś podobnego do tego tylko że to podaj podczas uruchomienia a mi trzeba podczas kompilacji.
Podczas kompilacji chcesz wiedzieć jaki CLR był używany podczas kompilacji? Czyli prościej: chcesz wiedzieć na jaki CLR właśnie kompilujsz? Proponuję zajrzeć w opcje kompilatora, którego używasz...
0
podczas kompilacji, to takie rzeczy to tylko na poziomie msbuild lub minimalnie wyzej - vcproj.
przykladowy wycinek vcproj'a:
<Project DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003" ToolsVersion="3.5">
// ta sekcja jest przetwarzana bezwarunkowo
<PropertyGroup>
<Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
<Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
<TargetFrameworkVersion>v3.5</TargetFrameworkVersion>
// w tej bezwarunkowej sekcji powyzsza wartosc jest dla Ciebie dosc interesujaca
...
</PropertyGroup>
// o, spojrz - ta sekcja jest przetwarzana warunkowo
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
<DebugSymbols>true</DebugSymbols>
<DebugType>full</DebugType>
...
</PropertyGroup>
<ItemGroup>
<Reference Include="mscorlib" />
<Reference Include="System" />
<Reference Include="System.Data" />
...
</ItemGroup>
<ItemGroup>
<Compile Include="aaaa.cs" />
<Compile Include="bbbb.cs" />
<Compile Include="cccc.cs" />
...
</ItemGroup>
// o, zobacz - tutaj tez warunkowo, akurat rozroznia miedzy frameworkami
<Import Condition="'$(TargetFrameworkVersion)' == 'v1.0'" Project="$(MSBuildBinPath)\Microsoft.CompactFramework.CSharp.v1.targets" />
<Import Condition="'$(TargetFrameworkVersion)' == 'v2.0'" Project="$(MSBuildBinPath)\Microsoft.CompactFramework.CSharp.targets" />
<Import Condition="'$(TargetFrameworkVersion)' == 'v3.5'" Project="$(MSBuildBinPath)\Microsoft.CompactFramework.CSharp.targets" />
...
</Project>