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