Object Linking and Embedding

Материал из Википедии — свободной энциклопедии
Перейти к навигацииПерейти к поиску

OLE (англ. Object Linking and Embedding, произносится как oh-lay [олэй]) — технология связывания и внедрения объектов в другие документы и объекты, разработанная корпорациейМайкрософт.

В 1996 году Microsoft переименовала технологию вActiveX.

OLE позволяет передавать часть работы от одной программы редактирования к другой и возвращать результаты назад. Например, установленная на персональном компьютереиздательская система может послать некий текст на обработку в текстовый редактор, либо некоторое изображение в редактор изображений с помощью OLE-технологии.

Основное преимущество использования OLE (кроме уменьшения размера файла) — в том, что она позволяет создать главный файл, картотеку функций, к которой обращается программа. Этот файл может оперировать данными из исходной программы, которые после обработки возвращаются в исходный документ.

OLE используется при обработкесоставных документов (англ. compound documents), может быть использована при передаче данных между различными несвязанными между собой системами посредством интерфейса переноса (англ. drag-and-drop), а также при выполнении операций сбуфером обмена. Идея внедрения широко используется при работе с мультимедийным содержанием на веб-страницах (пример —Веб-ТВ), где используется передача изображения, звука, видео, анимации в страницахHTML (язык гипертекстовой разметки) либо в других файлах, также использующих текстовую разметку (например,XML иSGML). Однако технология OLE использует архитектуру «толстого клиента», то есть сетевойПК с избыточными вычислительными ресурсами. Это означает, что тип файла либо программа, которую пытаются внедрить, должна присутствовать на машине клиента. Например, если OLE оперирует таблицамиMicrosoft Excel, то программа Excel должна быть инсталлирована на машине пользователя.

Содержание

Технология

[править |править код]

OLE 1.*

[править |править код]

OLE 1.0 был выпущен в1990 году на основе технологииDDE (Dynamic Data Exchange), использовавшейся в более ранних версиях операционной системыMicrosoft Windows. В то время как технология DDE была сильно ограничена в количестве и методах передачи данных между двумя работающими программами, OLE имел возможность оперировать активными соединениями между двумя документами либо даже внедрить документ одного типа в документ другого типа.

OLE-серверы и клиенты взаимодействуют с системными библиотеками при помощи таблиц виртуальных функций (англ. virtual function tables,VTBL). Эти таблицы содержат указатели на функции, которые системная библиотека может использовать для взаимодействия с сервером или клиентом. Библиотеки OLESRV.DLL (на сервере) и OLECLI.DLL (на клиенте) первоначально были разработаны для взаимодействия между собой с помощью сообщения WM_DDE_EXECUTE, предоставляемого операционной системой.

OLE 1.1 позднее развился в архитектуруCOM (component object model) для работы с компонентами программного обеспечения. Позднее архитектура COM была преобразована и стала называтьсяDCOM.

Когда объект OLE помещен в буфер обмена информацией, он сохраняется в оригинальных форматах Windows (таких, какbitmap илиmetafile), а также сохраняется в своём собственном формате. Собственный формат позволяет поддерживающей OLE-программе внедрить порцию другого документа, скопированного в буфер, и сохранить её в документе пользователя.

OLE 2.0

[править |править код]

Следующим эволюционным шагом стал OLE 2.0, сохранивший те же цели и задачи, что и предыдущая версия. Но OLE 2.0 стал надстройкой над архитектурой COM вместо использования VTBL. Новыми особенностями сталиавтоматизация технологииdrag-and-drop,in-place activation иstructured storage.

ActiveX

[править |править код]
Основная статья:ActiveX

В1996 году Microsoft переименовала технологию OLE 2.0 вActiveX. Были представленыэлементы управления ActiveX,ActiveX документы и технологияActive Scripting. Эта версия OLE в основном используется веб-дизайнерами для вставки в страницы мультимедийных данных.

См. также

[править |править код]
  • DDE (Dynamic Data Exchange)

Ссылки

[править |править код]

Литература

[править |править код]
Перейти к шаблону «Microsoft Office»
Клиентские приложения
Серверные приложения
Устаревшие приложения
Онлайн-службы
Версии дляWindows
Версии дляmacOS
Технологии
Перейти к шаблону «Компоненты Microsoft Windows»
Основные
Службы
управления
Приложения
Win32
UWP/WASDK[англ.]
Исторические
Игры
Ядро ОС
Службы
Файловые
системы
Серверы
Архитектура
Безопасность
Совместимость
Источник —https://ru.wikipedia.org/w/index.php?title=Object_Linking_and_Embedding&oldid=125664945
Категории:
Скрытая категория: