Ответ 1
- 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 пыталась популяризировать технологию расширения веб-приложений.