Экспорт класса Prism в COM: использование ComVisible и GuidDelphi , Технологии , COM и DCOMЭкспорт класса Prism в COM: использование ComVisible и GuidВведениеВ мире разработки программного обеспечения часто возникает необходимость интеграции компонентов, написанных на разных языках программирования. Одним из способов такой интеграции является использование технологии COM (Component Object Model), которая позволяет компонентам, написанным на различных языках программирования, взаимодействовать друг с другом. В данной статье мы рассмотрим, как экспортировать класс, написанный на языке программирования Prism (технология, позволяющая создавать компоненты .NET, совместимые с COM), с использованием технологии COM Interop. ПроблемаПеред разработчиками стоит задача экспонирования класса, реализующего определенный интерфейс, в COM-совместимую среду. Рассмотрим пример интерфейса
В данном случае интерфейс РешениеДля экспорта класса в COM-среду необходимо использовать атрибут Подробное описаниеШаг 1: Применение атрибута ComVisibleДля начала, необходимо применить атрибут
Шаг 2: Установка GUID с помощью атрибута GuidЕсли необходимо установить конкретный GUID для интерфейса и класса, можно использовать атрибут ```pascal {$R *.res} unit FooUnit; interface uses System.SysUtils, System.Variants, System.Classes, System.Generics.Collections, System.Contnrs, System.SysInitUtils; // Для использования класса TGuid type // Определение GUID для интерфейса {$DECLSPEC UID '{00000000-0000-0000-C000-000000000046}'} // IUnknown IFoo = public interface property bar: string; read; // Добавление GUID для класса {$ATTRIBUTE Guid('{00000000-0000-0000-C000-0000000000000000000000000000400000000000000000000000000000000000400000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 Экспорт класса Prism в COM: использование атрибутов ComVisible и Guid для интеграции компонентов, написанных на Prism, с COM-средой. Комментарии и вопросыПолучайте свежие новости и обновления по Object Pascal, Delphi и Lazarus прямо в свой смартфон. Подпишитесь на наш Telegram-канал delphi_kansoftware и будьте в курсе последних тенденций в разработке под Linux, Windows, Android и iOS Материалы статей собраны из открытых источников, владелец сайта не претендует на авторство. Там где авторство установить не удалось, материал подаётся без имени автора. В случае если Вы считаете, что Ваши права нарушены, пожалуйста, свяжитесь с владельцем сайта. :: Главная :: COM и DCOM ::
|
||||
©KANSoftWare (разработка программного обеспечения, создание программ, создание интерактивных сайтов), 2007 |