- OLE = Связывание и внедрение объектов
- DDE = Динамический обмен данными
- COM = объектная модель компонентов
OLE: Это метод связывания частей одного документа с частями другого. Например, наличие слайда PowerPoint со встроенной в него диаграммой Excel. Когда таблица Excel обновляется, диаграмма также должна обновляться. Когда вы снова открываете PowerPoint, волшебным образом это происходит! (Этот пример является связанным объектом.) Встроенные объекты такие же, только электронная таблица Excel не существует во внешнем файле, данные для электронной таблицы содержатся в файле PowerPoint.
Вы можете встраивать документы Excel, Word и PowerPoint друг в друга со связанными объектами. Другие приложения были написаны специально для поддержки встраивания в Word, такие как Microsoft Equation Editor.
OLE 1 был построен на DDE, который использовал оконные сообщения для уведомления приложений об изменении исходных данных и обычно передавал данные с помощью дескрипторов глобальной памяти HGLOBAL.
OLE 2 был построен на COM.
COM - это независимая от языка объектно-ориентированная модель компонентов и ABI, основанная на DCE RPC. Как система RPC она поддерживала удаленные вызовы между процессами на одной машине, а затем, с DCOM, на разных машинах. Первоначально COM использовался как часть архитектуры MAPI (которая использует объектную модель COM, но не службы регистрации COM), а затем был официально запущен сам по себе как общая объектная модель, включающая в себя активацию реестра и объектов и другие службы. (Моникеры и структурированное хранилище, например.)
OLE Automation не имеет ничего общего с OLE - это только фирменное соединение. OLE Automation - это совместимое с Visual Basic подмножество COM, которое поддерживает только базовые типы данных (например, без целых чисел или структур без знака), но включает объекты (интерфейсы COM).
Управление OLE , однако связано с OLE. Они являются визуальными компонентами, в первую очередь предназначенными для пользователей Visual Basic начиная с VB 4, но визуальные элементы предоставляются с использованием средств встраивания OLE 2. Они также могут быть размещены (теоретически, если они правильно написаны) на всем, что может содержать OLE 2. встроенный объект, и также часто использовались в приложениях C ++. Обычно они используют интерфейсы, совместимые с OLE Automation, для программирования во время выполнения.
Элемент управления ActiveX - это маркетинговый термин для COM-объектов со времени, когда Microsoft пыталась популяризировать технологию расширения веб-приложений.