Poznámka:
Přístup k této stránce vyžaduje autorizaci. Můžete se zkusit přihlásit nebo změnit adresáře.
Přístup k této stránce vyžaduje autorizaci. Můžete zkusit změnit adresáře.
Umožňuje nespravovaným hostitelům načíst modul CLR (Common Language Runtime) do procesu.
Tato funkce je v rozhraní .NET Framework 4 zastaralá.
Syntaxe
HRESULT CorBindToRuntime (
[in] LPCWSTR pwszVersion,
[in] LPCWSTR pwszBuildFlavor,
[in] REFCLSID rclsid,
[in] REFIID riid,
[out] LPVOID FAR *ppv
);
Parametry
pwszVersion [v] Řetězec popisující verzi modulu CLR, kterou chcete načíst.
Číslo verze v rozhraní .NET Framework se skládá ze čtyř částí oddělených tečkami: major.minor.build.revision. Řetězec předaný tak, jak pwszVersion musí začínat znakem "v", za kterým následuje první tři části čísla verze (například "v1.0.1529").
Některé verze modulu CLR se instalují s prohlášením zásad, které určuje kompatibilitu s předchozími verzemi modulu CLR. Spouštěcí přecházeč pwszVersion ve výchozím nastavení vyhodnotí příkazy zásad a načte nejnovější verzi modulu runtime, která je kompatibilní s požadovanou verzí. Hostitel může vynutit vynechání vyhodnocení zásad a načtení přesné verze zadané pwszVersion předáním hodnoty STARTUP_LOADER_SAFEMODE parametru flags , jak je popsáno níže.
Pokud volající určuje hodnotu null pro pwszVersion, je načtena nejnovější verze modulu runtime. Předání hodnoty null dává hostiteli žádnou kontrolu nad tím, jakou verzi modulu runtime se načte. I když tento přístup může být v některých scénářích vhodný, důrazně doporučujeme, aby hostitel doručil konkrétní verzi, která se má načíst.
pwszBuildFlavor [v] Řetězec, který určuje, zda se má načíst server nebo sestavení pracovní stanice CLR. Platné hodnoty jsou svr a wks. Sestavení serveru je optimalizované tak, aby využívalo více procesorů pro uvolňování paměti a sestavení pracovní stanice je optimalizované pro klientské aplikace spuštěné na počítači s jedním procesorem.
Pokud pwszBuildFlavor je nastavená hodnota null, sestavení pracovní stanice se načte. Při spuštění na počítači s jedním procesorem se sestavení pracovní stanice vždy načte, i když pwszBuildFlavor je nastaveno na svr. Pokud pwszBuildFlavor je ale nastavená svr možnost souběžného uvolňování paměti (viz popis parametru flags ), načte se sestavení serveru.
rclsid [v] Třída CLSID coclass, která implementuje buď ICorRuntimeHost nebo ICLRRuntimeHost rozhraní. Podporované hodnoty jsou CLSID_CorRuntimeHost nebo CLSID_CLRRuntimeHost.
riid [v] Požadované IID rozhraní od rclsid. Podporované hodnoty jsou IID_ICorRuntimeHost nebo IID_ICLRRuntimeHost.
ppv [ven] Vrácený ukazatel rozhraní na riid.
Poznámky
Pokud pwszVersion určuje verzi modulu runtime, která neexistuje, CorBindToRuntimeEx vrátí hodnotu HRESULT CLR_E_SHIM_RUNTIMELOAD.
CorBindToRuntimeEx a CorBindToRuntime proveďte stejnou operaci, ale CorBindToRuntimeEx funkce umožňuje nastavit příznaky pro určení chování CLR.
Kontext spuštění a tok identity systému Windows
Ve verzi 1 CLR objekt neprotéká mezi asynchronními body, WindowsIdentity jako jsou nová vlákna, fondy vláken nebo zpětné volání časovače. Ve verzi 2.0 modulu CLR ExecutionContext objekt zabalí některé informace o aktuálně spuštěné vlákně a toky přes libovolný asynchronní bod, ale ne přes hranice domény aplikace. Podobně objekt WindowsIdentity také proudí napříč libovolným asynchronním bodem. Aktuální zosobnění ve vlákně proto také proudí.
Tok můžete změnit dvěma způsoby:
Úpravou ExecutionContext nastavení pro potlačení toku na základě vlákna (viz SuppressFlow, SuppressFlowa SuppressFlowWindowsIdentity metody).
Změnou výchozího režimu procesu na režim kompatibility verze 1, kde WindowsIdentity objekt neprotéká přes žádný asynchronní bod bez ExecutionContext ohledu na nastavení v aktuálním vlákně. Způsob změny výchozího režimu závisí na tom, jestli ke načtení modulu CLR použijete spravované spustitelné nebo nespravované hostitelské rozhraní:
U spravovaných spustitelných souborů je nutné nastavit
enabledatribut legacyImpersonationPolicy> element na .<trueU nespravovaných hostitelských rozhraní nastavte
STARTUP_LEGACY_IMPERSONATIONpříznak v parametruflagsCorBindToRuntimeExpři volání funkce.
Režim kompatibility verze 1 se vztahuje na celý proces a na všechny domény aplikace v procesu.
Požadavky
Platformy: Viz požadavky na systém.
Záhlaví: MSCorEE.h
Knihovna: MSCorEE.dll
Verze rozhraní .NET Framework: Dostupné od verze 1.0