Share via


Karışık (yerel ve yönetilen) derlemeler

Karma derlemeler hem yönetilmeyen makine yönergelerini hem de MSIL yönergelerini içerebilir. Bu, yerel C++ kitaplıklarıyla uyumluluğu korurken .NET bileşenlerini çağırmalarını ve çağırmalarını sağlar. Geliştiriciler karma derlemeleri kullanarak .NET ve yerel C++ kodunun bir karışımını kullanarak uygulama yazabilir.

Örneğin, tamamen yerel C++ kodundan oluşan mevcut bir kitaplık , /clr derleyici anahtarıyla tek bir modül yeniden derlenerek .NET platformuna getirilebilir. Bu modül daha sonra .NET özelliklerini kullanabilir, ancak uygulamanın geri kalanıyla uyumlu kalır. Aynı dosya içinde işlev temelinde yönetilen ve yerel derleme arasında karar vermek bile mümkündür (bkz. yönetilen, yönetilmeyen).

Visual C++ yalnızca /clr derleyici seçeneğini kullanarak karma yönetilen derlemelerin oluşturulmasını destekler. /clr:pure ve /clr:safe derleyici seçenekleri Visual Studio 2015'te kullanım dışıdır ve Visual Studio 2017'de desteklenmez. Saf veya doğrulanabilir yönetilen derlemelere ihtiyacınız varsa bunları C# kullanarak oluşturmanızı öneririz.

Microsoft C++ derleyici araç takımının önceki sürümleri karma, saf ve doğrulanabilir olmak üzere üç ayrı yönetilen derleme türünün oluşturulmasını destekliyor. İkinci ikisi Saf ve Doğrulanabilir Kod (C++/CLI) içinde ele alınıyor.

Bu bölümde

Nasıl yapılır: /clr'ye geçiş
Uygulamanızda .NET işlevselliğini tanıtmak veya yükseltmek için önerilen adımları açıklar.

Nasıl yapılır: /clr Kullanarak MFC ve ATL Kodunu Derleme
Ortak Dil Çalışma Zamanı'nı hedeflemek için mevcut MFC ve ATL programlarının nasıl derleneceklerini açıklar.

Karışık Derlemeleri Başlatma
"Yükleyici kilidi" sorununu ve çözümlerini açıklar.

Karışık Derlemeler için Kitaplık Desteği
/clr derlemelerinde yerel kitaplıkların nasıl kullanılacağını açıklar.

Performans Konuları
Karma derlemelerin ve veri hazırlamanın performans etkilerini açıklar.

Uygulama Etki Alanları ve Visual C++
Uygulama etki alanları için Visual C++ desteğini açıklar.

Çift Thunking
Yönetilen bir işlev için yerel giriş noktasının performans etkilerini açıklar.

/clr ile Oluşturulan COM Nesnelerini Kullanırken CLR Kapatmada Özel Durumlardan Kaçınma
/clr ile derlenmiş bir COM nesnesini kullanan yönetilen bir uygulamanın düzgün bir şekilde kapatılmasının nasıl sağlandığını açıklar.

Nasıl yapılır: CRT Kitaplık DLL'inden Bağımlılık Kaldırarak Kısmen Güvenilir Uygulama Oluşturma
Msvcm90.dll üzerindeki bağımlılığı kaldırarak Visual C++ kullanarak kısmen güvenilen bir Ortak Dil Çalışma Zamanı uygulamasının nasıl oluşturulacağını açıklar.

Karma derlemeler için kodlama yönergeleri hakkında daha fazla bilgi için bkz . Yönetilen/Yönetilmeyen Kod Birlikte Çalışabilirliğine Genel Bakış.

Ayrıca bkz.