Технология OLE

Технология связывания и внедрения объектов (Object Linking and Embedding) имеет больше функциональных возможностей, причем если приложение поддерживает OLE, то оно само выполняет обмен данными по этой технологии.

Операции связывания (Linking) и внедрения (Embedding), реализованные в рамках OLE, внешне напоминают технологию DDE и обмен данными через буфер обмена. При работе по технологии OLE выполняется та же последовательность действий. Документ со встроенными OLE-объектами выглядит аналогично документу с фрагментами, вставленными через буфер обмена. Однако в этом случае при двойном щелчке мыши в поле объекта он активизируетсяи запускается приложение, в котором создавался этот объект, и в него передается объект для редактирования или выполнения других операций. После окончания работы с объектом программа-источник закрывается, а измененный объект автоматически передается обратно в документ приложения-клиента.

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

При связывании:

♦ отсутствует необходимость создания второй копии объекта, что позволяет сократить требуемый объем дискового пространства;

♦ внесение изменений в связанный объект обеспечивает дублирование этих изменений во всех документах, с которыми объект был связан;

♦ запоминается путь к оригиналу, поэтому при переносе на другую машину необходимо переписать все файлы, содержащие объекты, включенные в данный документ.

При внедрении:

♦ изменения вставленного объекта не отражаются в оригинале;

♦ вся информация хранится в одном файле и никаких проблем при переносе на другой компьютер не возникает.

В рамках OLE реализован метод drag-and-drop(перетащить и бросить), который обеспечивает наглядность процесса обмена данными, и его можно применять вместо операции копирования через буфер обмена даже при межоконном перемещении объектов и их частей.

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

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

OLE-технология, разработанная корпорацией Microsoft, обеспечивает:

- привязку — возможность вызова одной программы из другой;

- встраивание — помещение объектов, созданных в одном приложении, в документ другого.