Интерфейс ICLRMetaHost
Предоставляет методы, которые возвращают определенную версию среды CLR на основе ее номера версии, перечисляют все установленные среды CLR, перечисляют все среды выполнения, загруженные в указанный процесс, обнаруживают версию среды CLR, используемую для компиляции сборки, завершают процесс с чистым завершением работы среды выполнения и запрашивают устаревшую привязку API.
Методы
Метод | Описание |
---|---|
Метод EnumerateInstalledRuntimes | Возвращает перечисление, содержащее допустимый указатель интерфейса ICLRRuntimeInfo для каждой версии СРЕДЫ CLR, установленной на компьютере. |
Метод EnumerateLoadedRuntimes | Возвращает перечисление, содержащее допустимый указатель интерфейса ICLRRuntimeInfo для каждой среды CLR, загруженной в данном процессе. Этот метод заменяет GetVersionFromProcess. |
Метод ExitProcess | Пытается корректно завершить работу всех загруженных сред выполнения, а затем завершает процесс. Заменяет функцию CorExitProcess . |
Метод GetRuntime | Возвращает интерфейс ICLRRuntimeInfo , соответствующий определенной версии среды CLR. Этот метод заменяет функцию CorBindToRuntimeEx , используемую с флагом STARTUP_LOADER_SAFEMODE . |
Метод GetVersionFromFile | Возвращает исходную версию компиляции платформа .NET Framework сборки (хранящуюся в метаданных) с учетом пути к файлу. Этот метод заменяет GetFileVersion. |
Метод QueryLegacyV2RuntimeBinding | Возвращает интерфейс, представляющий среду выполнения, к которой была привязана устаревшая политика активации, например с помощью useLegacyV2RuntimeActivationPolicy атрибута в <записи файла конфигурации startup> Element , путем прямого использования устаревших API активации или путем вызова метода ICLRRuntimeInfo::BindAsLegacyV2Runtime . |
Метод RequestRuntimeLoadedNotification | Гарантирует обратный вызов указанного указателя функции при первой загрузке версии СРЕДЫ CLR, но еще не запущенной. Этот метод заменяет LockClrVersion |
Комментарии
Единственный способ получить экземпляр этого интерфейса — вызвать функцию CLRCreateInstance следующим образом:
ICLRMetaHost *pMetaHost = NULL;
HRESULT hr = CLRCreateInstance(CLSID_CLRMetaHost,
IID_ICLRMetaHost, (LPVOID*)&pMetaHost);
Требования
Платформы: см. раздел Требования к системе.
Заголовка: MetaHost.h
Библиотека: Включено в качестве ресурса в MSCorEE.dll
версии платформа .NET Framework: доступно с 4