Jak: vytvoření aplikace částečně důvěryhodného odebráním závislost na CRT knihovny DLL
Toto téma popisuje vytvoření částečně důvěryhodného společného jazykového modulu Runtime aplikace Visual C++ odebráním závislost na msvcm90.dll.
Aplikace Visual C++ s /clr bude mít závislost na msvcm90.dll, což je část C Runtime Library.Pokud chcete, aby aplikace pro použití v částečně důvěryhodném prostředí, bude vynuceno CLR určitá pravidla zabezpečení přístupu kódu na knihovny DLL.Proto bude nutné odebrat tuto závislost, protože obsahuje msvcm90.dll nativního kódu a na ní nelze vynutit zásady zabezpečení přístupu kódu.
Pokud chcete odebrat závislost na tuto knihovnu v kódu aplikace nepoužívá žádné funkce knihovny C Runtime, bude mít použití /NODEFAULTLIB:msvcmrt.lib možnost linker a propojení s ptrustm.lib nebo ptrustmd.lib.Tyto knihovny obsahují soubory objekt pro inicializaci a uninitialization aplikace, tříd výjimek používá kódem inicializace a spravovaného kódu pro zpracování výjimek.Propojení v jednom z těchto knihoven odeberete všechny závislost na msvcm90.dll.
[!POZNÁMKA]
Pořadí sestavení uninitialization se může lišit pro aplikace, které používají knihovny ptrust.Pro běžné aplikace jsou obvykle sestavení uvolněn v obráceném pořadí, jsou načteny, ale to není zaručeno.Pro částečné důvěryhodnosti aplikace jsou obvykle sestavení uvolněn ve stejném pořadí, které jsou načteny.To také není zaručeno.
Vytvoření částečně důvěryhodného smíšené (/ clr) aplikace
Odebrat závislost na msvcm90.dll, musíte zadat do linker nezahrnout pomocí této knihovny /NODEFAULTLIB:msvcmrt.lib možnost linker.Informace, jak to udělat pomocí vývojového prostředí Visual Studio nebo programově, viz / NODEFAULTLIB (ignorovat knihovny).
Vstupní závislostí linker, přidejte jedno z knihovny ptrustm.Pomocí ptrustm.lib vytváříte aplikace v režimu vydání.Režim ladění pomocí ptrustmd.lib.Informace, jak to udělat pomocí vývojového prostředí Visual Studio nebo programově, viz .Lib soubory jako vstup Linker.
Viz také
Referenční dokumentace
/Link (průchod možnosti Linker)
Koncepty
Smíšená (nativní a spravovaná) sestavení
Inicializace smíšených sestavení
Podpora knihovny pro smíšená sestavení