Архив рубрики ‘Обмен данными’ Category

Достоинства и недостатки механизма *L*

13.01.2008

Первоначально OLE-механизм связи и внедрения объектов считался

улучшенным *DE. Однако со временем он превратился в основу создания объектно-ориентированной системы. Особенность O** состоит в том, что объект, вставленный в другой объект, несет в себе информацию о

приложении,           его          породившем.           Поэтому,           например,          отчет,

сформированный в текстовом процессоре, имеет длинную «электронную половину», связывающую его с «матерью» - базой данных. Кроме того, можно создать связь с файлом, в котором содержится оригинал объекта, и тогда DDE при каждой корректировке оригинала объекта будет соответственно изменять его копии (или фрагменты), вставленные в другие документы. Если такая связь установлена, объект называется

связанным, в противном случае он называется внедренным.

Основным новшеством технологии O*E стала возможность

активизации встроенных объектов. В рамках технологии O*E само понятие объекта приобрело новый смысл. Раньше объектом называли любой фрагмент, переносимый из одного приложения в другое. На самом же деле переносился не сам фрагмент, а лишь его «экранный образ», приложение-источник преобразовывало данные из своего внутреннего формата в один из стандартов Wi*dows, и в таком виде фрагмент

вставлялся в приложение-приемник.

В понимании OLE объект представляет собой сочетание данных

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

независимо от типа документа.

Привлекательным в *LE стал метод d*ag and **op. Его можно

применять вместо операции копирования через буфер обмена. Он

обеспечивает наглядность процесса обмена данными.

OLE имеет дело с набором объектов, которые формируют составные

документы. Составной документ - это совокупность данных, подготовленных при помощи различных приложений. Так, например, подготовленное в текстовом процессоре письмо может включать таблицу, созданную программой для обработки электронных таблиц. То есть *LE предназначено для создания среды, в которой пользователь сможет создавать и поддерживать составные документы без потери атрибутов объектов данных с возможностью манипулирования объектами в их

исходном виде.

Использование связывания удобнее тем, что оно не приводит к

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

документов.

Внедрение включает в составной документ копию оригинального

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

его размера.

И все же внедрение имеет преимущества в сравнении со

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

клиенте.

Разница между связыванием и внедрением заключается в том, где

хранятся данные. Связанные данные хранятся в файле-источнике. Файл- приемник содержит только код, в котором содержится имя и

местоположение исходного приложения и исходного документа.

Внедренные данные хранятся в файле-приемнике и код, связанный с OLE

указывает на исходное приложение.

Как DDE, так и *LE используются для обмена информацией между

двумя приложениями. В каких приложениях использовать DDE, а в каких *LE? Этот вопрос затрагивает основы функционирования DD* и O**. Технология OLE построена на основе объектов. По своим функциональным возможностям OLE лучше, чем DDE, но OLE требует намного больше ресурсов. DD* не уступает свое место **E вследствие того, что эта технология требует намного меньше ресурсов и очень проста в использовании. OLE поддерживает активизацию по месту, то есть вы щелкаете кнопкой мыши на объекте *LE и сразу перемещаетесь в родное

приложение этого объекта.

Выбор между DDE и OLE в основном зависит от наличия

достаточного            количества           ресурсов,           от          требуемой           степени

функциональности и интеграции, а также от необходимой для данного приложения производительности. Таким образом **E, по отношению к DDE является более мощной, более надежной и имеет больше возможностей, но она является более требовательной к системным

ресурсам.

Механизм связывания и внедрения OL*

13.01.2008

При передаче данных с помощью буфера обмена, программа, в

которую вставляется информация, должна ее «понимать». Однако иногда надо вставить информацию, которую принимающая программа не понимает. Так, в редактируемой с помощью Mic*osoft Word документ может понадобиться вставить математическую или химическую формулу, нотный фрагмент. Можно выйти из положения, экспортировав формулу или ноты из специализированного редактора в виде графического рисунка. Но это не удобно, так как при изменении исходной формулы или

нот надо будет повторять весь описанный процесс снова. (more…)

DDE-технология

13.01.2008

Обмен данными через буфер обмена подходит для операций

копирования, управляемых пользователем. В то же время для автоматического обмена данными наиболее удобен специальный механизм динамического обмена данными - DD* (*ynamic Da*a Exchange

динамический обмен данными). (more…)

Передача данных через буфер обмена

13.01.2008

Простейшим средством для передачи данных между W*ndows-

приложениями является буфер обмена - это некоторая динамически изменяемая область памяти, способная хранить информацию в типовых форматах Win*ows и доступная всем приложениям Window*. Одна программа может поместить данные (текст, рисунок или иную

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

же или другого документа. (more…)

Внедрение и связывание объектов

13.01.2008

Операционная система Win*ows позволяет:

создавать комплексные документы, содержащие несколько разных

типов данных;

обеспечивать совместную работу нескольких приложений при

подготовке одного документа;

переносить и копировать объекты между приложениями. (more…)