Bu, Çerçeve ve Referanslar iletişim kutusunda F1 tuşuna bastığınızda görünür:
Yeni projeler için varsayılan olarak, hedeflenen çerçeve .NET Framework 4 olarak ayarlanır. IDE, hedeflenen çerçevenin değiştirilmesini desteklemez, ancak manuel olarak değiştirebilirsiniz. Proje dosyasında (.vcxproj), varsayılan hedeflenen çerçeve v4.0 özellik öğesi ile temsil edilir. Hedeflenen çerçeveyi değiştirmek için projeyi kaldırın, proje dosyasını açmak için bir metin düzenleyicisi kullanın ve sonra özellik öğesinin değerini v4.0'dan sunucunuzda yüklü başka bir sürüme değiştirin. Örneğin, .NET Framework v3.5'i temsil eden v3.5'i belirtirseniz, Visual Studio 2008 SP1'in yüklenmesi gerekir . Dosyayı kaydedip kapatın, projeyi yeniden yükleyin ve hedeflenen çerçevenin özellik sayfasında görüntülendiğini doğrulayın. *
Dönüştürülen projelerde bu çok doğru değil, <TargetFrameworkVersion>
öğeyi kendiniz eklemeniz gerekecek . "Globals" etiketli PropertyGroup'a koyun:
<PropertyGroup Label="Globals">
<TargetFrameworkVersion>v3.5</TargetFrameworkVersion>
<others...>
</PropertyGroup>
Genel özellik sayfasındaki Platform Araç Seti ayarını alan VS'nin ilk sürümü olan VS2012 ve sonraki sürümleri kullandığınızda hikaye farklıdır. Daha sonra 3.5 hedefleyen uygun bir yapı elde etmek için "v90" seçmelisiniz. Ancak bu beceriksizdir, bu seçimin mevcut olması için makinede VS'nin tüm ara sürümlerinin yüklü olması gerekir.
Neden VS2008 yüklü ihtiyacınız kendi başına bir açıklama gerektirir. Temel sorun, C çalışma zamanı kitaplığının (msvcrt100.dll ve üstü) yönetilen kod yürütülmesini desteklemek için .NET kodu içermesidir. Önemli detay, CRT'nin C ++ / CLI kodu kullanan programda doğru şekilde başlatılmasını sağlayan bir modül başlatıcıdır. Bu kod her zaman .NET 4 hedefler ve msvcrt100.dll (ve üstü) içine sert pişmiş olduğundan her zaman v4.0.30319 çalışma zamanı üzerinde kaya gibi bir bağımlılık var. Sadece eski C runtime msvcrt90.dll kullandığınızda saf v2.0.50727 bağımlılığına sahip olabilirsiniz. Yalnızca derleyicinin #include VS2008 dosyalarını kullandığınızda msvcrt90.dll bağımlılığına sahip olduğunuzdan emin olabilirsiniz.
Yakında .NET 4'e geçmenin oldukça gerekli olduğu gerçeği, bunu yapmazsanız böyle sorunlarla mücadele edeceksiniz. Bunun için çok az pratik engel var, .NET 4 hayal edebileceğiniz tüm hedeflerde ücretsiz olarak kullanılabilir. Daha yüksek bir çalışma zamanı sürümüne geçmeyle ilişkili FUD'nin üstesinden gelmek genellikle sadece asıl konudur. Korku ve şüphe için hiçbir neden yok, kararlı.