Примечание.
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
Предоставляет интерфейс для предпочитаемой версии общеязыковой среды выполнения (CLR) на основе политики размещения, управляемой сборки, строки версии и потока конфигурации. Этот метод фактически не загружает и не активирует среду CLR, а просто возвращает интерфейс ICLRRuntimeInfo , представляющий результат политики. Этот метод заменяет методы GetRequestedRuntimeInfo, GetRequestedRuntimeVersion, CorBindToRuntimeHost, CorBindToRuntimeByCfg и GetCORRequiredVersion .
Синтаксис
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);
Параметры
| Имя | Описание |
|---|---|
dwPolicyFlags |
[in] Обязательный. Указывает член перечисления METAHOST_POLICY_FLAGS , представляющий политику привязки, и любое количество модификаторов. Единственная политика, доступная в настоящее время, — это METAHOST_POLICY_HIGHCOMPAT. Модификаторы включают METAHOST_POLICY_EMULATE_EXE_LAUNCH, METAHOST_POLICY_APPLY_UPGRADE_POLICY, METAHOST_POLICY_SHOW_ERROR_DIALOG, METAHOST_POLICY_USE_PROCESS_IMAGE_PATH и METAHOST_POLICY_ENSURE_SKU_SUPPORTED. |
pwzBinary |
[в] Необязательно. Задает путь к файлу сборки. |
pCfgStream |
[в] Необязательно. Задает файл конфигурации в виде System.Runtime.InteropServices.ComTypes.IStream. |
pwzVersion |
[in, out] Необязательный. Задает или возвращает предпочтительную версию среды CLR для загрузки. |
pcchVersion |
[in, out] Обязательный. Указывает ожидаемый размер pwzVersion в качестве входных данных для предотвращения переполнения буфера. Если pwzVersion имеет значение NULL, pcchVersion содержит ожидаемый размер pwzVersion при возвращении значения GetRequestedRuntime, чтобы разрешить предварительное выделение; в противном случае pcchVersion содержит число символов, записанных в pwzVersion. |
pwzImageVersion |
[out] Необязательный. При GetRequestedRuntime возврате содержит версию среды CLR, соответствующую возвращаемого интерфейса ICLRRuntimeInfo . |
pcchImageVersion |
[in, out] Необязательный. Указывает размер pwzImageVersion в качестве входных данных для предотвращения переполнения буфера. Если pwzImageVersion имеет значение NULL, pcchImageVersion содержит требуемый размер pwzImageVersion при возвращении значения GetRequestedRuntime, чтобы разрешить предварительное выделение. |
pdwConfigFlags |
[out] Необязательный. Если GetRequestedRuntime во время процесса привязки используется файл конфигурации, при возврате pdwConfigFlags содержит значение METAHOST_CONFIG_FLAGS, указывающее, имеет useLegacyV2RuntimeActivationPolicy ли <элемент запуска> набор атрибутов и значение атрибута. Примените маску METAHOST_CONFIG_FLAGS_LEGACY_V2_ACTIVATION_POLICY_MASK к , pdwConfigFlags чтобы получить значения, относящиеся к useLegacyV2RuntimeActivationPolicy. |
riid |
[in] Указывает идентификатор интерфейса IID_ICLRRuntimeInfo для запрошенного интерфейса ICLRRuntimeInfo . |
ppRuntime |
[out] При GetRequestedRuntime возврате содержит указатель на соответствующий интерфейс ICLRRuntimeInfo . |
Комментарии
После успешного завершения этого метода имеет место его побочный эффект в виде объединения дополнительных флагов с текущими флагами запуска по умолчанию из возвращенного интерфейса среды выполнения тогда и только тогда, когда один или несколько из следующих элементов существуют в потоке конфигурации в разделе <configuration><runtime>.
<gcServer enabled="true"/>приводит к заданиюSTARTUP_SERVER_GC.<etwEnable enabled="true"/>приводит к заданиюSTARTUP_ETW.<appDomainResourceMonitoring enabled="true"/>приводит к заданиюSTARTUP_ARM.
По умолчанию результирующее значениеSTARTUP_FLAGS является побитовым или сочетанием заданных значений из предыдущего списка с флагами запуска по умолчанию.
Возвращаемое значение
Этот метод возвращает следующие конкретные результаты HRESULT, а также ошибки HRESULT, которые указывают на сбой метода.
| HRESULT | Описание: |
|---|---|
| S_OK | Метод завершился успешно. |
| E_POINTER |
pwzVersion не равен NULL, а pcchVersion равен NULL.-или- pwzImageVersion не равен NULL, а pcchImageVersion равен NULL. |
| E_INVALIDARG |
dwPolicyFlags не указывает METAHOST_POLICY_HIGHCOMPAT. |
| ERROR_INSUFFICIENT_BUFFER | Памяти, выделенной для pwzVersion, недостаточно.-или- Памяти, выделенной для pwzImageVersion, недостаточно. |
| CLR_E_SHIM_RUNTIMELOAD |
dwPolicyFlags включает в себя METAHOST_POLICY_APPLY_UPGRADE_POLICY, а как pwzVersion, так и pcchVersion имеют значение NULL. |
Требования
Платформы: см. раздел Требования к системе.
Заголовка: MetaHost.h
Библиотека: Включено в качестве ресурса в MSCorEE.dll
версии платформа .NET Framework: доступно с 4