На этом шаге мы перечислим технологии маршалинга.
Вопрос маршалинга данных между клиентом и сервером является ключевым при создании СОМ-объекта
или сервера. В зависимости от типа взаимосвязи клиента и сервера выбирается конкретная технология передачи
данных по запросам методов между клиентским приложением и СОМ-сервером.
В таблице 1 перечислены технологии программирования маршалинга, а также типы маршалинга, типы границ,
между которыми переносятся данные, и конкретные способы реализации.
Таблица 1. Технологии маршалинга данных для СОМ-объектов
Тип маршалинга | Границы | Способ реализации |
---|---|---|
Отсутствие маршалинга | DLL | Глобальная адресация |
Стандартный маршалинг | Процесс | Язык описания интерфейсов (Interface Definition Language, IDL) |
Маршалинг Automation | Язык программирования | Маршалер Automation |
Специальный маршалинг | Процесс | Специальное ПО, протокол |
Если СОМ-объект используется в качестве сервера, встраиваемого в процесс, то он размещается в DLL,
то есть загружается в пространство процесса клиента, и все вызовы методов и передача данных происходят напрямую
(без маршалинга).
На следующем шаге мы рассмотрим более подробно стандартный маршалинг.