ICLRMetaHostPolicy::GetRequestedRuntime metódus

Felületet biztosít a közös nyelvi futtatókörnyezet (CLR) előnyben részesített verziójához üzemeltetési szabályzat, felügyelt szerelvény, verziósztring és konfigurációs stream alapján. Ez a metódus valójában nem tölti be vagy aktiválja a CLR-t, hanem egyszerűen visszaadja a szabályzat eredményét képviselő ICLRRuntimeInfo felületet. Ez a metódus felülírja a GetRequestedRuntimeInfo, a GetRequestedRuntimeVersion, a CorBindToRuntimeHost, a CorBindToRuntimeByCfg és a GetCORRequiredVersion metódust.

Szintaxis

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);

Paraméterek

Név Leírás
dwPolicyFlags [in] Szükséges. Meghatározza a METAHOST_POLICY_FLAGS enumerálás egy tagját, amely egy kötési szabályzatot és tetszőleges számú módosítót jelöl. Jelenleg az egyetlen elérhető szabályzat a METAHOST_POLICY_HIGHCOMPAT.

A módosítók közé tartozik METAHOST_POLICY_EMULATE_EXE_LAUNCH, METAHOST_POLICY_APPLY_UPGRADE_POLICY, METAHOST_POLICY_SHOW_ERROR_DIALOG, METAHOST_POLICY_USE_PROCESS_IMAGE_PATH és METAHOST_POLICY_ENSURE_SKU_SUPPORTED.
pwzBinary [in] Választható. Megadja a szerelvényfájl elérési útját.
pCfgStream [in] Választható. A konfigurációs fájlt a következőként System.Runtime.InteropServices.ComTypes.IStreamadja meg: .
pwzVersion [be, ki] Választható. Megadja vagy visszaadja a betölteni kívánt CLR-verziót.
pcchVersion [be, ki] Szükséges. A puffertúllépések elkerülése érdekében megadja a bemeneti érték várt méretét pwzVersion . Ha pwzVersion null, pcchVersion akkor a függvény a visszatérés várható méretét GetRequestedRuntimepwzVersion tartalmazza az előfoglalás engedélyezéséhez; ellenkező esetben pcchVersion a függvénybe pwzVersionírt karakterek számát tartalmazza.
pwzImageVersion [kifelé] Választható. Visszatéréskor GetRequestedRuntime a visszaadott ICLRRuntimeInfo felületnek megfelelő CLR-verziót tartalmazza.
pcchImageVersion [be, ki] Választható. A puffertúllépések elkerülése érdekében bemenetként adja meg a méretet pwzImageVersion . Ha pwzImageVersion null, pcchImageVersion akkor az előfoglalás engedélyezéséhez a visszatéréshez GetRequestedRuntime szükséges méretet pwzImageVersion tartalmazza.
pdwConfigFlags [kifelé] Választható. Ha GetRequestedRuntime a kötési folyamat során konfigurációs fájlt használ, a visszaadásakor egy METAHOST_CONFIG_FLAGS értéket tartalmaz, pdwConfigFlags amely jelzi, hogy az indítási<> elem rendelkezik-e az useLegacyV2RuntimeActivationPolicy attribútumkészlettel és az attribútum értékével. Alkalmazza a METAHOST_CONFIG_FLAGS_LEGACY_V2_ACTIVATION_POLICY_MASK maszkot a pdwConfigFlags számára releváns értékek lekéréséhez useLegacyV2RuntimeActivationPolicy.
riid [in] Megadja a kért ICLRRuntimeInfo felület IID_ICLRRuntimeInfo felületazonosítót.
ppRuntime [kifelé] Amikor GetRequestedRuntime visszaadja, a megfelelő ICLRRuntimeInfo felületre mutató mutatót tartalmaz.

Megjegyzések

Ha ez a módszer sikeres, az a mellékhatása, hogy további jelzőket kombinál a visszaadott futtatókörnyezeti felület aktuális alapértelmezett indítási jelzőivel, ha és csak akkor, ha az alábbi elemek közül legalább egy megtalálható a konfigurációs adatfolyamban a <configuration><runtime> szakaszban:

  • <gcServer enabled="true"/> okokat STARTUP_SERVER_GC kell beállítani.

  • <etwEnable enabled="true"/> okokat STARTUP_ETW kell beállítani.

  • <appDomainResourceMonitoring enabled="true"/> okokat STARTUP_ARM kell beállítani.

Az eredményül kapott alapértelmezett STARTUP_FLAGS érték az előző listából beállított értékek bitenkénti VAGY kombinációja az alapértelmezett indítási jelzőkkel.

Visszatérési érték

Ez a metódus a következő konkrét HRESULT-okat, valamint a metódushibát jelző HRESULT-hibákat adja vissza.

HRESULT Description
S_OK A metódus sikeresen befejeződött.
E_POINTER pwzVersion nem null, és pcchVersion null értékű.

-vagy-

pwzImageVersion nem null, és pcchImageVersion null értékű.
E_INVALIDARG dwPolicyFlags nem adja meg a értéket METAHOST_POLICY_HIGHCOMPAT.
ERROR_INSUFFICIENT_BUFFER A lefoglalt pwzVersion memória nem megfelelő.

-vagy-

A lefoglalt pwzImageVersion memória nem megfelelő.
CLR_E_SHIM_RUNTIMELOAD dwPolicyFlagsMETAHOST_POLICY_APPLY_UPGRADE_POLICY, és pcchVersion mindkettő pwzVersion null értékű.

Követelmények

Platformok: Lásd: Rendszerkövetelmények.

Fejléc: MetaHost.h

Könyvtár: Erőforrásként szerepel a MSCorEE.dll

.NET-keretrendszer verziók: 4 óta érhető el

Lásd még