Smíšená (nativní a spravovaná) sestavení

Smíšená sestavení jsou schopná obsahovat pokyny k nespravovanému počítači i pokyny jazyka MSIL. To jim umožňuje volat a volat komponentami .NET a přitom zachovat kompatibilitu s nativními knihovnami C++. Pomocí smíšených sestavení můžou vývojáři vytvářet aplikace pomocí kombinace kódu .NET a nativního kódu C++.

Do platformy .NET lze například převést existující knihovnu, která se skládá výhradně z nativního kódu C++, a to tak, že rekompiluje pouze jeden modul s přepínačem kompilátoru /clr . Tento modul pak dokáže používat funkce .NET, ale zůstává kompatibilní se zbytkem aplikace. Je dokonce možné rozhodnout mezi spravovanou a nativní kompilací na základě funkce v rámci stejného souboru (viz spravované, nespravované).

Visual C++ podporuje pouze generování smíšených spravovaných sestavení pomocí možnosti kompilátoru /clr . Možnosti kompilátoru /clr:pure a /clr:safe jsou v sadě Visual Studio 2015 zastaralé a v sadě Visual Studio 2017 nejsou podporované. Pokud požadujete čistá nebo ověřitelná spravovaná sestavení, doporučujeme je vytvořit pomocí jazyka C#.

Starší verze sady nástrojů kompilátoru Microsoft C++ podporovaly generování tří různých typů spravovaných sestavení: smíšené, čisté a ověřitelné. Tyto dvě jsou popsány v čistém a ověřitelném kódu (C++/CLI).

V této části

Postupy: Migrace na /clr
Popisuje doporučené kroky pro zavedení nebo upgrade funkcí .NET ve vaší aplikaci.

Postupy: Kompilace kódu MFC a ATL pomocí /clr
Popisuje, jak zkompilovat existující programy MFC a ATL pro cílení na common language runtime.

Inicializace smíšených sestavení
Popisuje problém a řešení zámku zavaděče.

Podpora knihovny pro smíšená sestavení
Popisuje, jak používat nativní knihovny v kompilacích /clr .

Faktory ovlivňující výkon
Popisuje dopad na výkon smíšených sestavení a zařazování dat.

Domény aplikace a jazyk Visual C++
Popisuje podporu jazyka Visual C++ pro domény aplikací.

Double Thunking
Popisuje důsledky výkonu nativního vstupního bodu pro spravovanou funkci.

Zabránění výjimkám při vypnutí CLR při využívání objektů COM sestavených pomocí /clr
Popisuje, jak zajistit správné vypnutí spravované aplikace, která využívá objekt COM zkompilovaný pomocí /clr.

Postupy: Vytvoření částečně důvěryhodné aplikace CRT odebráním závislosti na knihovně DLL
Popisuje, jak vytvořit částečně důvěryhodnou aplikaci Common Language Runtime pomocí jazyka Visual C++ odebráním závislosti na msvcm90.dll.

Další informace o pokynech pro kódování smíšených sestavení najdete v tématu Přehled interoperability spravovaného nebo nespravovaného kódu.

Viz také