Примечание
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
Объектная модель компонента (COM) позволяет объекту предоставлять функциональность другим компонентам и размещать приложения. В то время как com-объекты были фундаментальными для программирования Windows на протяжении многих лет, приложения, предназначенные для среды CLR, предлагают множество преимуществ.
Приложения .NET Framework в конечном итоге заменят разработанные на COM. До тех пор вам может потребоваться использовать или создавать COM-объекты с помощью Visual Studio. Взаимодействие с COM или COM-взаимодействием позволяет использовать существующие COM-объекты при переходе на платформу .NET Framework в собственном темпе.
С помощью .NET Framework для создания COM-компонентов можно использовать взаимодействие COM без регистрации. Это позволяет контролировать, какая версия DLL включена, если на компьютере установлено несколько версий, и позволяет конечным пользователям использовать XCOPY или FTP для копирования приложения в соответствующий каталог на своем компьютере, где он может быть запущен. Дополнительные сведения см. в разделе Registration-Free COM Interop.
Управляемый код и данные
Код, разработанный для .NET Framework, называется управляемым кодом и содержит метаданные, используемые средой CLR. Данные, используемые приложениями .NET Framework, называются управляемыми данными , так как среда выполнения управляет задачами, связанными с данными, такими как выделение и восстановление памяти и проверка типов. По умолчанию Visual Basic .NET использует управляемый код и данные, но вы можете получить доступ к неуправляемом коду и данным объектов COM с помощью сборок взаимодействия (описано далее на этой странице).
Сборки
Сборка является основным строительным блоком приложения .NET Framework. Это коллекция функциональности, которая создается, версионируется и развертывается как единое внедрение, содержащее один или несколько файлов. Каждая сборка содержит манифест сборки.
Библиотеки типов и манифесты сборок
Библиотеки типов описывают характеристики COM-объектов, таких как имена элементов и типы данных. Манифесты сборок выполняют ту же функцию для приложений .NET Framework. Они включают в себя сведения о следующих параметрах:
Идентификатор сборки, версия, культура и цифровая подпись.
Файлы, составляющие реализацию сборки.
Типы и ресурсы, составляющие сборку. Сюда входят те, которые экспортируются из него.
Зависимости времени компиляции от других сборок.
Разрешения, необходимые для правильного выполнения сборки.
Дополнительные сведения о сборках и манифестах сборок см. в разделе "Сборки" в .NET.
Импорт и экспорт библиотек типов
Visual Studio содержит служебную программу Tlbimp, которая позволяет импортировать сведения из библиотеки типов в приложение .NET Framework. Библиотеки типов можно создавать из сборок с помощью служебной программы Tlbexp.
Сведения о Tlbimp и Tlbexp см. в статьях Tlbimp.exe (импорт библиотек типов) и Tlbexp.exe (экспортер библиотек типов).
Интероп-сборки
Сборки взаимодействия — это сборки .NET Framework, которые создают мост между управляемым и неуправляемым кодом, сопоставляя члены объектов COM с эквивалентными управляемыми членами .NET Framework. Сборки взаимодействия, созданные Visual Basic .NET, обрабатывают многие детали работы с COM-объектами, такие как интероперабельный маршаллинг.
Маршаллирование совместимости
Все приложения .NET Framework используют набор распространенных типов, которые обеспечивают взаимодействие объектов независимо от используемого языка программирования. Параметры и возвращаемые значения COM-объектов иногда используют типы данных, которые отличаются от тех, которые используются в управляемом коде. Маршаллинг совместимости — это процесс упаковки параметров и возвращаемых значений в эквивалентные типы данных при передаче в объекты COM и обратно. Дополнительные сведения см. в разделе "Маршалинг взаимодействия".
См. также
- Взаимодействие COM
- Пошаговое руководство: реализация наследования с помощью COM-объектов
- Взаимодействие с неуправляемым кодом
- Устранение неполадок с взаимодействием
- Сборки в .NET
- Tlbimp.exe (импорт библиотеки типов)
- Tlbexp.exe (экспортер библиотек типов)
- Маршалинг межоперационных взаимодействий
- Registration-Free COM-взаимодействие