Birden çok çerçeve sürümünü ve platformlarını hedefleme

MSBuild kullanarak, .NET Framework'ün çeşitli sürümlerinden herhangi birinde ve çeşitli sistem platformlarından herhangi birinde çalışacak bir uygulama derleyebilirsiniz. Örneğin, 32 bit platformda .NET Framework 3.5 SP1 üzerinde çalışacak bir uygulama derleyebilir ve aynı uygulamayı 64 bit platformda .NET Framework 4.7.2 üzerinde çalışacak şekilde derleyebilirsiniz.

Not

Bu makalede, bir projenin aynı anda yalnızca bir çerçeveyi ve yalnızca bir platformu hedeflediği .NET Framework derlemeleri için geçerli olan eski bir çoklu hedef oluşturma türü açıklanmaktadır. .NET Core ve .NET 5 ve sonraki sürümlerinde, proje dosyasındaki TargetFrameworks (çoğul) özelliğini kullanarak daha yeni bir çoklu hedef türü kullanabilirsiniz. dotnet build veya benzer .NET CLI komutları ile veya projeyi yeniden yükledikten sonra Visual Studio ile derleme yaptığınızda, derlemeniz her hedef çerçeve için bir kez birden çok derlemenin gerçekleştiği daha yeni bir çoklu hedef oluşturma türünü kullanır. Bkz. Hedef çerçeveleri.

MSBuild hedeflemesinin özelliklerinden bazıları şunlardır:

  • .NET Framework'ün önceki bir sürümünü hedefleyen bir uygulama geliştirebilirsiniz; örneğin, sürüm 3.5 SP1.

  • Hedef çerçevenin önceden tanımlanmış bir alt kümesi olan çerçeve profilini hedefleyebilirsiniz.

  • .NET Framework'ün geçerli sürümü için bir hizmet paketi yayınlanırsa, bunu hedefleyebilirsiniz.

  • MSBuild hedeflemesi, bir uygulamanın yalnızca hedeflenen çerçevede ve platformda kullanılabilen işlevselliği kullanmasını garanti eder.

Hedef çerçeve ve platform

hedef çerçeve, bir projenin üzerinde çalıştırılacak şekilde derlenmiş .NET Framework sürümüdür ve hedef platform projenin üzerinde çalışmak üzere oluşturulduğu sistem platformudur. Örneğin, 80x86 işlemci ailesi (x86) ile uyumlu bir 32 bit platformda çalışacak bir .NET Framework 3.5 SP1 uygulamasını hedeflemek isteyebilirsiniz. Hedef çerçeve ve hedef platformun birleşimi, hedef bağlamı olarak bilinir. Daha fazla bilgi için bkz. hedef çerçeve ve hedef platform .

Araç Seti (ToolsVersion)

Araç Takımı, uygulamayı oluşturmak için kullanılan araçları, görevleri ve hedefleri bir araya toplar. Araç Takımı, csc.exe ve vbc.exe, ortak hedefler dosyası (microsoft.common.targets) ve ortak görevler dosyası (microsoft.common.tasks) gibi derleyicileri içerir. Daha fazla bilgi için bkz. Toolset (ToolsVersion).

Başvuru derlemeleri

Araç Takımı'nda belirtilen başvuru derlemeleri, bir uygulama tasarlamanıza ve oluşturmanıza yardımcı olur. Bu başvuru derlemeleri yalnızca belirli bir hedef derlemeyi etkinleştirmekle kalmaz, aynı zamanda Visual Studio IDE'deki bileşenleri ve özellikleri de hedefle uyumlu olanlarla kısıtlar. Daha fazla bilgi için bkz. Derlemeleri tasarım süresinde çözümleme işlemi.

Hedefleri ve görevleri yapılandırma

MSBuild hedeflerini ve görevlerini MSBuild ile işlem dışı çalışacak şekilde yapılandırabilir, böylece üzerinde çalıştırdığınızdan önemli ölçüde farklı bağlamları hedefleyebilirsiniz. Örneğin, geliştirme bilgisayarı .NET Framework 4.7.2 ile 64 bit bir platformda çalışırken 32 bit bir .NET Framework 3.5 SP1 uygulamasını hedefleyebilirsiniz. Daha fazla bilgi için bkz. hedefleri ve görevleri yapılandırma.

Sorun giderme

Hedef bağlamın parçası olmayan bir derlemeye başvurmaya çalışırsanız hatalarla karşılaşabilirsiniz. Bu hatalar ve bunlar hakkında yapılması gerekenler hakkında daha fazla bilgi için bkz. .NET Framework hedefleme hatalarını giderme.