ICLRMetaHostPolicy::GetRequestedRuntime – metoda
Poskytuje rozhraní pro upřednostňovanou verzi modulu CLR (Common Language Runtime) na základě zásad hostování, spravovaného sestavení, řetězce verze a konfiguračního streamu. Tato metoda ve skutečnosti nenačte ani neaktivuje CLR, ale jednoduše vrátí rozhraní ICLRRuntimeInfo , které představuje výsledek zásad. Tato metoda nahrazuje Metody GetRequestedRuntimeInfo, GetRequestedRuntimeVersion, CorBindToRuntimeHost, CorBindToRuntimeByCfg a GetCORRequiredVersion .
Syntaxe
HRESULT GetRequestedRuntime(
[in] METAHOST_POLICY_FLAGS dwPolicyFlags,
[in] LPCWSTR pwzBinary,
[in] IStream *pCfgStream,
[in, out, size_is(*pcchVersion)] LPWSTR pwzVersion,
[in, out] DWORD *pcchVersion,
[out, size_is(*pcchImageVersion)] LPWSTR pwzImageVersion,
[in, out] DWORD *pcchImageVersion,
[out] DWORD *pdwConfigFlags,
[in] REFIID riid
[out, iid_is(riid), retval] LPVOID *ppRuntime);
Parametry
Název | Description |
---|---|
dwPolicyFlags |
[v] Požadované. Určuje člena výčtu METAHOST_POLICY_FLAGS představující zásady vazby a libovolný počet modifikátorů. Jediná zásada, která je aktuálně dostupná , je METAHOST_POLICY_HIGHCOMPAT. Mezi modifikátory patří METAHOST_POLICY_EMULATE_EXE_LAUNCH, METAHOST_POLICY_APPLY_UPGRADE_POLICY, METAHOST_POLICY_SHOW_ERROR_DIALOG, METAHOST_POLICY_USE_PROCESS_IMAGE_PATH a METAHOST_POLICY_ENSURE_SKU_SUPPORTED. |
pwzBinary |
[v] Volitelné. Určuje cestu k souboru sestavení. |
pCfgStream |
[v] Volitelné. Určuje konfigurační soubor jako System.Runtime.InteropServices.ComTypes.IStream. |
pwzVersion |
[in, out] Volitelné. Určuje nebo vrátí upřednostňovanou verzi CLR, která se má načíst. |
pcchVersion |
[in, out] Požadované. Určuje očekávanou velikost pwzVersion vstupu, aby nedošlo k přetečení vyrovnávací paměti. Pokud pwzVersion je hodnota null, pcchVersion obsahuje očekávanou velikost pwzVersion při GetRequestedRuntime vrácení, aby bylo možné předběžné přidělení; v opačném případě pcchVersion obsahuje počet znaků zapsaných do pwzVersion . |
pwzImageVersion |
[out] Volitelné. Při GetRequestedRuntime vrácení obsahuje verzi CLR odpovídající rozhraní ICLRRuntimeInfo , která je vrácena. |
pcchImageVersion |
[in, out] Volitelné. Určuje velikost pwzImageVersion jako vstupu, aby nedošlo k přetečení vyrovnávací paměti. Pokud pwzImageVersion je hodnota null, pcchImageVersion obsahuje požadovanou velikost pwzImageVersion při GetRequestedRuntime vrácení, aby bylo možné předběžné přidělení. |
pdwConfigFlags |
[out] Volitelné. Pokud GetRequestedRuntime se během procesu vazby používá konfigurační soubor, pdwConfigFlags při vrácení obsahuje hodnotu METAHOST_CONFIG_FLAGS, která označuje, zda <má element startup> nastavený atribut a hodnotu atributu.useLegacyV2RuntimeActivationPolicy Použijte masku METAHOST_CONFIG_FLAGS_LEGACY_V2_ACTIVATION_POLICY_MASK na pdwConfigFlags , abyste získali hodnoty relevantní pro useLegacyV2RuntimeActivationPolicy . |
riid |
[v] Určuje identifikátor rozhraní IID_ICLRRuntimeInfo požadovaného rozhraní ICLRRuntimeInfo . |
ppRuntime |
[out] Při GetRequestedRuntime návratu obsahuje ukazatel na odpovídající rozhraní ICLRRuntimeInfo . |
Poznámky
Pokud je tato metoda úspěšná, má vedlejší účinek kombinování dalších příznaků s aktuálními výchozími příznaky spouštění vráceného rozhraní modulu runtime, pokud a pouze v případě, že v konfiguračním streamu v rámci oddílu <configuration><runtime>
existuje jeden nebo více následujících prvků:
<gcServer enabled="true"/>
příčinySTARTUP_SERVER_GC
, které mají být nastaveny.<etwEnable enabled="true"/>
příčinySTARTUP_ETW
, které mají být nastaveny.<appDomainResourceMonitoring enabled="true"/>
příčinySTARTUP_ARM
, které mají být nastaveny.
Výsledná výchozí STARTUP_FLAGS
hodnota je bitové nebo kombinace hodnot, které jsou nastaveny z předchozího seznamu s výchozími příznaky spuštění.
Návratová hodnota
Tato metoda vrátí následující konkrétní hodnoty HRESULT a také chyby HRESULT, které značí selhání metody.
HRESULT | Description |
---|---|
S_OK | Metoda se úspěšně dokončila. |
E_POINTER | pwzVersion není null a pcchVersion je null.-nebo- pwzImageVersion není null a pcchImageVersion je null. |
E_INVALIDARG | dwPolicyFlags neurčoval METAHOST_POLICY_HIGHCOMPAT . |
ERROR_INSUFFICIENT_BUFFER | Přidělená paměť pwzVersion je nedostatečná.-nebo- Přidělená paměť pwzImageVersion je nedostatečná. |
CLR_E_SHIM_RUNTIMELOAD | dwPolicyFlags zahrnuje METAHOST_POLICY_APPLY_UPGRADE_POLICY a obě pwzVersion hodnoty a pcchVersion mají hodnotu null. |
Požadavky
Platformy: Viz Požadavky na systém.
Záhlaví: MetaHost.h
Knihovny: Zahrnuto jako prostředek v MSCorEE.dll
Verze rozhraní .NET Framework: K dispozici od 4