Поделиться через


Развертывание приложения интероперации

Приложение взаимодействия обычно включает клиентную сборку .NET, одну или несколько сборок взаимодействия, представляющих отдельные библиотеки типов COM и один или несколько зарегистрированных COM-компонентов. Visual Studio и пакет SDK для Windows предоставляют средства для импорта и преобразования библиотеки типов в сборку взаимодействия, как описано в разделе импорта библиотеки типов в качестве сборки. Существует два способа развертывания приложения взаимодействия:

  • Используя внедренные типы взаимодействия: начиная с .NET Framework 4, вы можете указать компилятору встроить информацию о типах из сборки взаимодействия в ваш исполняемый файл. Компилятор внедряет только информацию о типах, которые использует ваше приложение. Вам не нужно развертывать сборку для взаимодействия с приложением. Это рекомендуемый метод.

  • При развертывании сборок взаимодействия, вы можете создать стандартную ссылку на сборку взаимодействия. В этом случае сборка взаимодействия должна быть развернута непосредственно с вашим приложением. Если вы применяете этот метод и не используете приватный COM-компонент, всегда ссылайтесь на основную сборку взаимодействия (Primary Interop Assembly, PIA), опубликованную автором COM-компонента, который вы планируете включить в управляемый код. Дополнительные сведения о создании и использовании основных сборок взаимодействия см. в разделе "Основные сборки взаимодействия".

Если вы используете встроенные типы взаимодействия, развертывание является простым и незатруднительным. Нет ничего особенного, что вам нужно сделать. В остальной части этой статьи описываются сценарии развертывания и использования сборок для обеспечения взаимодействия вашего приложения.

Развертывание сборок взаимодействия

Сборки могут иметь строгие имена. Сборка с строгим именем включает открытый ключ издателя, который предоставляет уникальную идентичность. Сборки, созданные импортом библиотеки типов (Tlbimp.exe), могут быть подписаны издателем с помощью параметра /keyfile . Подписанные сборки можно установить в глобальный кэш сборок. Неподписанные сборки должны быть установлены на компьютере пользователя в качестве частных сборок.

Частные сборки

Чтобы установить сборку для частного использования, необходимо установить исполняемый файл приложения и сборку интероперабельности, содержащую импортированные типы COM, в одну структуру каталогов. На следующем рисунке показана не подписанная сборка для взаимодействия, предназначенная для частного использования в Client1.exe и Client2.exe, которые находятся в отдельных каталогах приложений. В этом примере сборка взаимодействия, которая называется LOANLib.dll, устанавливается дважды.

Структура каталогов и

Все компоненты COM, связанные с приложением, должны быть установлены в реестре Windows. Если Client1.exe и Client2.exe на рисунке установлены на разных компьютерах, необходимо зарегистрировать com-компоненты на обоих компьютерах.

Общие сборки

Сборки, совместно используемые несколькими приложениями, должны быть установлены в централизованном репозитории, называемом глобальным кэшем сборок. Клиенты .NET могут получить доступ к той же копии сборки взаимодействия, которая подписана и установлена в глобальном кэше сборок. Дополнительные сведения о создании и использовании основных сборок взаимодействия см. в разделе "Основные сборки взаимодействия".

См. также