Инициализация среды выполнения из COM-приложения
Перед тем как COM-приложение сможет активировать управляемый тип, необходимо загрузить в память среду CLR. Хотя COM-взаимодействие на самом деле не загружает среду выполнения (это делает код запуска среды выполнения), COM-приложение может ориентироваться на определенную версию среды выполнения.
На выбор версии среды выполнения влияют следующие факторы:
COM-приложение может задавать версию среды выполнения в файле конфигурации приложения. Дополнительные сведения см. в разделе Настройка COM-приложения для параллельного выполнения.
Среда выполнения может быть уже загружена в память расширенным узлом, таким как обозреватель Microsoft Internet Explorer или пакет Microsoft Office. Подключаемое COM-приложение использует среду выполнения, загруженную для узла, чтобы запустить управляемые компоненты.
Если требуется строгий контроль, COM-приложение может предварительно программным образом загрузить конкретную версию среды выполнения, вызвав метод ICLRMetaHostPolicy::GetRequestedRuntime (экспортированный из файла mscoree.dll). В противном случае приложение может выбрать иную версию среды выполнения на основе активированного COM-класса, вызывая функцию GetRequestedRuntimeVersionForCLSID (также экспортированную из файла mscoree.dll) и передавая возвращенное значение в функцию CorBindToRuntimeHost.
В отсутствие этих факторов код запуска загружает среду выполнения в соответствии с режимом загрузки, описанным в разделе Настройка COM-приложения для параллельного выполнения.
Разрешение типов
Если в реестре Windows есть несколько версий сборки, содержащей активируемый тип, среда выполнения загрузит последнюю версию по умолчанию.
Если для COM-приложения задан файл конфигурации, может быть выполнена привязка к типу в определенной версии сборки. Дополнительные сведения см. в разделе Настройка COM-приложения для параллельного выполнения.
Примечание |
---|
У компонентов, установленных с платформой .NET Framework версии 1.0, отсутствуют разделы реестра, зависящие от версии.Для этих компонентов на компьютере существует только одна версия типа, доступная модели COM для использования. |
См. также
Основные понятия
Разделы реестра, зависящие от версии
Настройка COM-приложения для параллельного выполнения
Применение атрибутов, зависящих от версии
COM-компоненты и параллельное выполнение