Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Лекции_2013 / lec_2013.doc
Скачиваний:
430
Добавлен:
22.02.2016
Размер:
3.79 Mб
Скачать
  1. Составной электронный документ. Технологии обмена данными в Windows: использование технологии drag-and-drop, буфера, dde, ole. Особенности реализации, преимущества и недостатки.

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

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

    1. Буфер промежуточного хранения Clipboard

Уже в первых версиях Windows был реализован встроенный буфер промежуточного хранения данных Clipboard (буфер обмена), который постоянно активен и доступен всем Windows-приложениям. Обмен данными через буфер обмена осуществляется следующим образом.

1.    Выделить в приложении-источнике фрагмент данных.

2.    Скопировать (перенести) выделенный фрагмент в буфер обмена командой Правка►Копировать или Правка►Вырезать.

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

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

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

Для непосредственного просмотра данных в буфере обмена, изменения формата представления данных в нем, записи содержимого буфера в файл и его очистки используется утилита Clipboard Viewer (Clipbrd), которая является компонентой операционной системы и устанавливается при ее инсталляции.

Недостатками обмена с использованием буфера являются:

        некоторое ограничение объема передаваемой через буфер информации;

    данные, вставленные в документ-приемник через буфер обмена, не обновляются при их изменении в документе-источнике.

    1. Технология dde

Для обмена данными между приложениями может использоваться технология DDE (Dynamic Data Exchange – динамический обмен данными). Суть технологии состоит в том, что вставляемый через буфер обмена объект сохраняет свою связь с оригиналом и при внесении в него изменений может автоматически обновляться. При этом 1) с одним оригиналом можно связать любое число документов; 2) возможно связывание по цепочке, когда источником является не оригинал, а ранее связанный объект; 3) установленная связь сохраняется и после закрытия приложений, т.е. внесенные в оригинал изменения автоматически вносятся во все документы, связанные с ним.

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

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

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

При обмене данными по рассмотренным технологиям объектом является любой фрагмент, переносимый из одного приложения в другое. На самом же деле переносился не сам фрагмент, а лишь его «экранный образ»: приложение-источник преобразовывает данные из своего внутреннего формата в один из стандартов Windows, и в таком виде фрагмент вставляется в приложение-приемник. Вставленный объект является составным элементом документа, в котором он отображается, но внести в него изменения довольно трудно, т.к. для этого требуется приложение-источник.