Предоставление доступа к компонентам .NET для COM
Написание типа .NET и его использование из неуправляемого кода — это разные операции с точки зрения разработчика. В этом разделе приводятся советы по написанию управляемого кода, который взаимодействует с клиентами COM:
Уточнение типов .NET для взаимодействия.
Все управляемые типы, методы, свойства, поля и события, которые требуется предоставить модели COM, должны быть открытыми. Типы должны иметь открытый конструктор без параметров, который является единственным конструктором, доступным для вызова из модели COM.
Применение атрибутов взаимодействия.
С помощью настраиваемых атрибутов в управляемом коде можно расширять возможности взаимодействия для компонента.
Упаковка сборки для модели COM.
Разработчикам COM-приложений могут потребоваться общие сведения о шагах, которые необходимо выполнить для развертывания ваших сборок и использования ссылок на них.
Кроме того, в этом разделе описываются задачи, связанные с использованием управляемого типа из клиента COM.
Использование управляемого типа из модели COM
-
Типы в сборке и библиотеке типов необходимо регистрировать во время разработки. Если установщик не регистрирует сборку, необходимо предоставить разработчикам COM-приложений инструкции по использованию программы Regasm.exe.
Создание ссылки на типы .NET из COM.
Разработчики COM-приложений могут использовать доступные средства и методы для ссылки на типы в сборке.
-
Разработчики COM-приложений могут вызывать методы для объектов .NET так же, как и методы для любого неуправляемого типа. Например, API CoCreateInstance модели COM активирует объекты .NET.
Развертывание приложения для доступа к COM-приложению.
Сборки со строгими именами могут устанавливаться в глобальный кэш сборок и должны быть подписаны их издателем. Сборки, которые не имеют строгих имен, должны устанавливаться в каталог приложения клиента.