Для обмена данными между приложениями может использоваться технология DDE(Dynamic Data Exchange — динамический обмен данными), суть которой состоит в том, что вставляемый через буфер обмена объект сохраняет свою связь с оригиналом и при внесении в него изменений может автоматически обновляться. При этом с одним оригиналом можно связать любое число документов; возможно связывание по цепочке, когда источником является не оригинал, а ранее связанный объект; установленная связь сохраняется и после закрытия приложений, т.е. внесенные в оригинал изменения автоматически вносятся во все документы, связанные с ним.
Для использования технологии DDE следует обычным путем скопировать объект из документа приложения-сервера в буфер обмена, перейти в приложение-клиент, а затем по команде Правка ►Специальная вставка ►переключатель Связьвставить его в документ.
Команда Правка ►Связипозволяет просмотреть все связи для данного документа, разорвать или переключить связь с одного объекта на другой или установить режим ручной активации связей, когда обновление информации в документе с изменением оригинала происходит не автоматически, а при выполнении соответствующей команды.
Однако технология DDE не нашла широкого распространения, поскольку при всех достоинствах динамического обмена данными сложность его функционирования привела к тому, что пользователи предпочитали вставку объектов через буфер обмена из-за ее простоты и понятности.
При обмене данными по рассмотренным технологиям объектом является любой фрагмент, переносимый из одного приложения в другое. На самом же деле переносился не сам фрагмент, а лишь его "экранный образ": приложение-источник преобразовывает данные из своего внутреннего формата в один из стандартов Windows, и в таком виде фрагмент вставляется в приложение-приемник. Вставленный объект является составным элементом документа, в котором он отображается, но внести в него изменения довольно трудно, так как для этого требуется приложение-источник.
Технология связывания и внедрения объектов (Object Linking and Embedding) имеет больше функциональных возможностей, причем если приложение поддерживает OLE, то оно само выполняет обмен данными по этой технологии.
Операции связывания (Linking) и внедрения (Embedding), реализованные в рамках OLE, внешне напоминают технологию DDE и обмен данными через буфер обмена. При работе по технологии OLE выполняется та же последовательность действий. Документ со встроенными OLE-объектами выглядит аналогично документу с фрагментами, вставленными через буфер обмена. Однако в этом случае при двойном щелчке мыши в поле объекта он активизируетсяи запускается приложение, в котором создавался этот объект, и в него передается объект для редактирования или выполнения других операций. После окончания работы с объектом программа-источник закрывается, а измененный объект автоматически передается обратно в документ приложения-клиента.
В рамках технологии OLE объект представляет собой сочетание данных какого-либо вида (текст, графика, видео, звук и др.) во внутреннем формате приложения-сервера, представленном в одном из стандартных форматов Windows, и информации о создавшей его программе, размере, времени создания и т.д. Таким образом, объект является законченной структурой, переносимой из одного документа в другой и сохраняющей отличительные особенности, независимо от типа документа, в котором в данный момент находится.
При связывании:
♦ отсутствует необходимость создания второй копии объекта, что позволяет сократить требуемый объем дискового пространства;
♦ внесение изменений в связанный объект обеспечивает дублирование этих изменений во всех документах, с которыми объект был связан;
♦ запоминается путь к оригиналу, поэтому при переносе на другую машину необходимо переписать все файлы, содержащие объекты, включенные в данный документ.
При внедрении:
♦ изменения вставленного объекта не отражаются в оригинале;
♦ вся информация хранится в одном файле и никаких проблем при переносе на другой компьютер не возникает.
В рамках OLE реализован метод drag-and-drop(перетащить и бросить), который обеспечивает наглядность процесса обмена данными, и его можно применять вместо операции копирования через буфер обмена даже при межоконном перемещении объектов и их частей.
OLE обеспечивает возможность местной активизации объекта — при двойном щелчке мышью объект обводится широкой штриховой рамкой, обозначающей активность, и остается на месте. Заголовок окна меняется на заголовок вызываемого приложения, а меню представляет собой комбинацию из меню приложения-источника и приложения-приемника. После выполнения операций (чаще всего, редактирования) над объектом возврат в первоначальное состояние осуществляется по щелчку мышью за пределами объекта.
Приложение-сервер и приложение-клиент обмениваются данными по наиболее новой технологии, доступной им обоим, т.е., если приложение-источник поддерживает только DDE, при работе в OLE объект будет вставлен, но возможность его активации из документа-приемника теряется.