Технология OLE. Введение в технологию OLE

30.07.2019 Флешки и HDD

OLE is a mechanism that allows users to create and edit documents containing items or "objects" created by multiple applications.

OLE was originally an acronym for Object Linking and Embedding. However, it is now referred to as OLE. Parts of OLE not related to linking and embedding are now part of Active technology.

OLE documents, historically called compound documents, seamlessly integrate various types of data, or components. Sound clips, spreadsheets, and bitmaps are typical examples of components found in OLE documents. Supporting OLE in your application allows your users to use OLE documents without worrying about switching between the different applications; OLE does the switching for you.

You use a container application to create compound documents and a server application or component application to create the items within the container document. Any application you write can be a container, a server, or both.

OLE incorporates many different concepts that all work toward the goal of seamless interaction between applications. These areas include the following:

    Linking and Embedding

    Linking and embedding are the two methods for storing items created inside an OLE document that were created in another application. For general information on the differences between the two, see the article OLE Background: Linking and Embedding . For more detailed information, see the articles Containers and Servers .

    In-Place Activation (Visual Editing)

    Activating an embedded item in the context of the container document is called in-place activation or visual editing. The container application"s interface changes to incorporate the features of the component application that created the embedded item. Linked items are never activated in place because the actual data for the item is contained in a separate file, out of the context of the application containing the link. For more information on in-place activation, see the article Activation .

    Linking and embedding and in-place activation provide the main features of OLE visual editing.

    Automation Automation allows one application to drive another application. The driving application is known as an automation client, and the application being driven is known as an automation server or automation component. For more information on automation, see the articles Automation Clients and Automation Servers .

    Automation works in both OLE and Active technology contexts. You can automate any object based on COM.

    Compound files provide a standard file format that simplifies structured storing of compound documents for OLE applications. Within a compound file, storages have many features of directories and streams have many features of files. This technology is also called structured storage. For more information on compound files, see the article Containers: Compound Files .

    Uniform Data Transfer

    Uniform Data Transfer (UDT) is a set of interfaces that allow data to be sent and received in a standard fashion, regardless of the actual method chosen to transfer the data. UDT forms the basis for data transfers by drag and drop. UDT now serves as the basis for existing Windows data transfer, such as the Clipboard and dynamic data exchange (DDE). For more information on UDT, see the article .

    Drag and drop is an easy-to-use, direct-manipulation technique to transfer data among applications, among windows within an application, or even within a single window in an application. The data to be transferred is selected and dragged to the desired destination. Drag and drop is based on uniform data transfer. For more information on drag and drop, see the article

Введение 3

1. Понятие OLE 4

2. Использование OLE 7

2.1 Внедрение 12

2.2 Перетаскивание объектов из одного приложения в другое 13

2.3 Связывание объектов 14

Заключение 28

Литература 29


Введение

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

Развитие информатизации общества тесно связано с развитием вычислительной техники.

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

Для связывания документов разных приложений используется технология

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


  1. Понятие OLE

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

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

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

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

OLE 1.0

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

OLE сервера и клиенты взаимодействуют с системными библиотеками при помощи таблиц виртуальных функций (англ. virtual function tables, VTBL). Эти таблицы содержат указатели на функции, которые системная библиотека может использовать для взаимодействия с сервером или клиентом. Библиотеки OLESVR.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

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

Подводя итог, можно сделать вывод, что OLE является набором средств, позволяющим легко подготавливать документы, включающие в себя данные, подготовленные в различных приложениях. Чтобы вы могли объединить данные, подготовленные в различных приложениях, необходимо, чтобы эти приложения поддерживали технологию OLE. Стандартные приложения Windows - Paintbrush, Write, Sound Recorder, Cardfile, Object Pakager поддерживают OLE. Кроме стандартных приложений Windows, многие другие приложения, разработанные фирмой Microsoft и другими независимыми фирмами, включают в себя поддержку OLE-технологии. Microsoft Word for Windows 2.0 и 6.0, Microsoft Excel 4.0 и 5.0, ZSoft PhotoFinish 2.0, Designer, FoxPro for Windows, Access и многие другие пакеты включают поддержку OLE-технологии.


2. Использование OLE

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

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

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

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

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

Технологию OLE можно показать на конкретном примере копирования вида чертежа приложения AutoCAD в документ Microsoft Word.

Открываем приложение AutoCAD и выбираем в списке файлов нужный нам чертёж (Рис. 1)

Рис.1.

Для того, чтобы скопировать чертёж в текстовый редактор Microsoft Word нажимаем кнопку Правка на панели инструментов (Рис. 2) и активируем строку Копировать вид. Открываем документ Microsoft Word, вставляем чертёж в нужное место текста.

Рис. 2

Рис.3

Для того, чтобы отредактировать чертёж в документе Microsoft Word (Рис.3), нужно навести курсор в поле чертежа и дважды щёлкнуть левой кнопкой мыши, чтобы зайти в приложение – сервер. При этом появится окно AutoCAD с исходным чертежом, в котором можно выполнить все необходимые изменения (Рис. 4). После нажатия кнопки Сохранить изменения сохранятся и в Microsoft Word. Если приложение AutoCAD закрыть, предварительно не сохранив файл, то появится окошко с вопросом «Обновить Microsoft Word перед закрытием объекта?» (Рис.5). Обновлённый чертёж представлен на Рис. 6.

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

Рис. 4

Рис. 5

Рис. 6

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


Исходный документ

Изменён

Исходный документ

Составной

документ не изменён

Составнойдокумент

Рис. 7

2.1 Внедрение

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

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

Для внедрение OLE -объекта в другое приложение необходимо:

  1. Открыть документ в исходном приложении.
  2. Скопировать внедряемые данные в буфер обмена.
  3. Открыть другое приложение.
  4. Нажать "Правка" и "Вставить" .
  5. Нажать "ОК" .

Рис. 8. Внедрение OLE -объекта из приложения MathCAD в Excel

2.2 Перетаскивание объектов из одного приложения в другое

Данные и графику, выбранные в окне другого приложения, можно добавить в чертеж, перетаскивая их мышью по экрану. Как окно исходного приложения, так и окно другого приложения при этом должно быть открыто и не свернуто (Рис. 9). Перетаскивание между приложениями возможно, только если второе приложение поддерживает технологию ActiveX. Объекты, перенесенные таким образом, становятся внедренными (а не связанными). Обычное перетаскивание данных аналогично их последовательному вырезанию и вставке. Данные полностью удаляются из документа-сервера и вставляются в составной документ. Если же перетаскивание производится при нажатой клавише CTRL , вместо вырезания осуществляется копирование; в составном документе создается копия данных, а исходный их вариант остается неизменным.

Рис. 9. Перетаскивание OLE -объекта из MathCAD в Excel

2.3 Связывание объектов

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

При установлении связи чертежа необходимо поддерживать доступ и к исходному приложению, и к документу. Если что-либо из них переименовано или перемещено, может потребоваться повторное задание связи.



Исходный документ

Изменён

Исходный документ

Составнойдокумент

Изменён

Составнойдокумент

Рис. 10

На Рис. 11 показано копирование объекта из MathCAD в Excel в режиме создания связи между документом сервера и составным документом. Обычным приёмом готовим формулу из MathCAD для копирования, т. е. выделяем формулу, правой кнопкой вызываем меню и активируем строчку Copy . Курсор наводим в нужное место рабочего листа Excel и щелкаем левой кнопкой мыши. Правой кнопкой мыши вызываем меню, в котором активируем строку Специальная вставка (красная стрелка на рисунке). В окошке Специальная вставка (Рис. 12) нажимаем кнопку Связать и выбираем нужный формат (в поле Как ). Нажимаем кнопку ОК. Формула из приложения MathCAD скопирована в приложение Microsoft Excel со связью.

Для того, чтобы отредактировать объект в Excel нужно установить курсор на поле объекта и правой кнопкой мыши вызвать меню (Рис. 13), нажать на кнопку Open и в появившемся рабочем листе MathCAD внести необходимые изменения в исходный объект. Автоматически эти изменения вносятся в объект рабочего листа Excel (Рис. 14).

Копирование

Рис. 11

Рис. 12

Рис. 13

Рис. 14

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

Рис. 15

Рис. 16

Если вносились изменения в объект документа сервера в то время, когда составной документ со связанной копией был закрыт, то при открытии файла с составным документом появится окошко с предупреждением об обновлении или не обновлении данных (Рис. 17).

Рис. 17

Аналогичная технология OLE со связью имеет место при копировании и редактировании объектов, например, из приложения MathCAD в Microsoft Word (Рис. 18).

Рис. 18

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

При это необходимо:

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

2. Выделить данные, а затем при нажатой правой кнопке мыши перетащить выделенные данные на новое место или в другую программу.

3. В контекстном меню выбрать нужную команду.

На рис. 20 показан результат перетаскивания формулы из приложения Excel в приложение Microsoft Word .

Перетаскивание

Рис. 19.

Рис. 20.

Изображение чертежа в файле Microsoft Word можно преобразовать, например, в виде значка. Процедура при этом должна состоять в следующем:

1. Вызываем меню для редактирования чертежа, но вместо кнопки Edit (Редактирование) нажимаем кнопку Преобразовать (Рис. 21).

2. В появившемся меню «Преобразование типа объекта» ставим галочку в прямоугольничке текущего типа, нажимаем последовательно кнопки «В виде значка» и ОК (Рис. 22).

3. В поле, где был чертёж, появится значок (Рис. 23)

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

Рис. 21

Рис. 22

Рис. 23

На Рис. 24 дано изображение чертежа, выполненного с помощью программы для проектировщиков Microsoft Office Visio и скопированного на страницу документа Microsoft Word .

Для того, чтобы изменить чертёж нужно на его поле щелкнуть правой кнопкой мыши и в появившемся меню активировать строчку «Объект Visio » и нажать кнопку «Изменить» (Рис. 25). Появится окно редактора Visio (Рис. 25), где можно будет при помощи соответствующих фигур на инструментальной панели произвести нужную корректировку чертежа. Например, на Рис. 26 показан скорректированный чертёж.

Рис. 24

Рис. 25

Рис. 26

Рис. 27

Покажем на примере вставку диаграммы из приложения Microsoft Gr а ph в приложение Microsoft Word . Для этого используются следующие операции:

  1. На инструментальной панели нажимаем кнопку Вставка + Объект .
  2. В окошке «Вставка объекта» (Рис. 28) выбираем тип объекта – в нашем случае – «Диаграмма Microsoft Gr а ph ».

Рис. 28

  1. Нажимаем ОК . Открывается рабочее поле Microsoft Gr а ph (Рис. 29).
  2. С помощью инструментов Microsoft Gr а ph строим нужную диаграмму и щелкаем левой кнопкой мыши на поле вне рисунка. Диаграмма вставляется в документ (Рис. 20).

Рис. 29

Рис. 30

Для редактирования диаграммы дважды щелкаем в области объекта и вызываем его для выполнения необходимых изменений (Рис. 31).

Рис. 31

По аналогичной процедуре производится вставка формул из приложения Microsoft Equation 3.0.

При двухкратном щелчке по формуле появится инструментальная линейка Microsoft Equation и можно выполнять изменения в формуле (Рис. 32):

Рис. 32

На Рис. 33 показан чертёж, выполненный с помощью программы КОМПАС – 3 D LT V 10 и скопированный в Microsoft Word .

Для редактирования чертежа достаточно дважды щелкнуть по объекту, вызвав тем самым программу сервера, и выполнить корректировку чертежа (Рис. 34).

Рис. 32

Рис. 34

Заключение

В курсовой работе показано, что среди ряда видов интерфейсов важную роль играет интерфейс между разными видами программного обеспечения (приложениями ПК).

Для связывания документов разных приложений, таких как AutoCAD , Microsoft Word , MathCAD , Microsoft Excel , Microsoft Power Point , Microsoft Equation , Microsoft Office Visio , Microsoft Graph , КОМПАС и т.д., используется технология OLE (Object Linking and Embedding ), что означает “связывание и встраивание объектов”.

Рассмотрены основные возможности OLE – технологии, приведены базовые приемы её использования.

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

Основные приёмы использования OLE – технологии показаны на конкретных примерах.

Результаты работы оформлены в виде презентации Microsoft Power Point , которая позволяет наглядно сопроводить публичное выступление с использованием мультимедийных эффектов.

Литература

  1. Microsoft Office 2000: Справочник. Под ред. Ю. Колесникова.– СПб: Питер, 1999. – 480 с.
  2. Власенко С. Ю. Microsoft Word 2002. – СПб: БХВ – Петербург, 2002. – 992 с.
  3. Додж М., Стинсон К. Эффективная работа с Microsoft Excel 2000. – СПб: Питер, 2002. – 1056 с.
  4. Информатика. Базовый курс / Симонович С. В., Евсеев Г. А., Мураховский В. И., Бобровский С. И.– СПб: Питер, 2001.– 640 с.
  5. Столяров А. М., Столярова Е. С. Word 2002 для себя.–М.: ДМК Пресс, 2002.– 432 с.
  6. Стоцкий Ю. Самоучитель Office 2000 – СПб: Питер, 2000. – 608 с.

7. Шафрин Ю. А 1500 основных понятий, терминов и практических советов для пользователей персональным компьютером.– М.: Дрофа, 2001.– 272 с.

Технология OLE (Object Linking and Embedding) ― технология управления и обмена информацией между программным интерфейсом других приложений. Связывание и внедрение объектов (Object Linking and Embedding).
OLE позволяет передавать часть работы от одной программы редактирования к другой и возвращать результаты назад. Например, установленная на персональном компьютере издательская система может послать некий текст на обработку в текстовый редактор, либо некоторое изображение в редактор изображений с помощью OLE-технологии.
Основное преимущество использования OLE (кроме уменьшения размера файла) в том, что она позволяет создать главный файл, картотеку функций, к которой обращается программа. Этот файл может оперировать данными из исходной программы, которые после обработки возвращаются в исходный документ.
OLE используется при обработке составных документов (англ. compound documents), может быть использована при передаче данных между различными несвязанными между собой системами посредством интерфейса переноса (англ. drag-and-drop), а также при выполнении операций с буфером обмена. Идея внедрения широко используется при работе с мультимедийным содержанием на веб-страницах (пример - Веб-ТВ), где используется передача изображение звука, видео, анимации в страницах HTML (язык гипертекстовой разметки) либо в других файлах, также использующих текстовую разметку (например, XML и SGML). Однако, технология OLE использует архитектуру «толстого клиента», то есть сетевой ПК с избыточными вычислительными ресурсами. Это означает, что тип файла либо программа, которую пытаются внедрить, должна присутствовать на машине клиента. Например, если OLE оперирует таблицами Microsoft Excel, то программа Excel должна быть инсталлирована на машине пользователя.
OLE 1.0 был выпущен в 1990 году на основе технологии DDE (Dynamic Data Exchange), использовавшейся в более ранних версиях операционной системы Microsoft Windows. В то время как технология DDE была сильно ограничена в количестве и методах передачи данных между двумя работающими программами, OLE имел возможность оперировать активными соединениями между двумя документами либо даже внедрить документ одного типа в документ другого типа.
OLE сервера и клиенты взаимодействуют с системными библиотеками при помощи таблиц виртуальных функций (англ. virtual function tables, VTBL). Эти таблицы содержат указатели на функции, которые системная библиотека может использовать для взаимодействия с сервером или клиентом. Библиотеки OLESVR.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 стал надстройкой над архитектурой COM вместо использования VTBL. Новыми особенностями стали автоматизация технологии drag-and-drop, in-place activation и structured storage.

Представление о технологии OLE

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

Примечание. Аббревиатура OLE означает Object Linking and Embedding, что переводится как связывание и внедрение объекта.

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

Например, текстовый редактор WordPad полностью обеспечивает работу по технологии OLE, так как он предназначен для создания текстовых документов, в которых могут быть рисунки, звуки, таблицы, видеоклипы и др. Графический редактор Paint предназначен для подготовки несложных рисунков, он не может работать по технологии OLE только как приложение-источник. Текстовый процессор Word представляет собой сложный комплекс и фактически включает в себя несколько приложений: редактор рисунков, редактор формул, текстовый редактор и др. Эти приложения по-разному используют технологию OLE. Редактор формул действует только как приложение-источник (OLE-сервер), а текстовый редактор может выступать как в роли источника, так и в роли приемника (OLE-клиента). Просмотреть список действующих в системе OLE-серверов можно, выполнив команду Вставить объект (в среде Word эта команда включена в меню Вставка).

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

Технология OLE предусматривает два варианта обмена данными:

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

§ связывание объекта, при котором в документ-приемник помещается не сам объект, а лишь ссылка на документ-источник. В этом случае OLE-объект будет связан не с приложением-источником, а с документом-источником, в котором находится этот объект. Эта связь позволяет изменить представление объекта в документе-приемнике, как только этот объект будет изменен в документе-источнике.

Внедрение объекта

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

Внедрить объект в документ можно несколькими способами:

§ из открытого документа (с помощью команд Вставить иСпециальная вставка);

§ из файла (специальной командой вставки файла или импорта файла);

§ непосредственным вызовом OLE-сервера (командой Вставить объект).

Внедрение объекта из открытого документа выполняется следующим образом:

§ в приложении-источнике выделяется объект, который будет внедряться;

§ выделенный объект копируется в буфер обмена с помощью команды Копировать илиВырезать;

§ осуществляется переход в приложение-приемник, где формируется составной документ, и указатель мыши устанавливается в место вставки объекта;

§ вставляется объект с помощью команды Вставить илиСпециальная вставка;

§ при использовании команды Специальная вставка на экране появляется диалоговое окно «Специальная вставка» (рис. 12.15), в котором необходимо выбрать способ вставки данных как объекта, отметить кнопку выбора <Вставить> и нажать кнопку <ОК>. Данные можно вставлять в составной документ также в виде значка, для чего в диалоговом окне «Специальная вставка» следует отметить соответствующий переключатель.

Технология внедрения содержимого файла, которая рассматривается на примере приложения Word, состоит в следующем:

§ вводится команда Файл из управляющего меню Вставка;

§ в диалоговом окне «Вставка файла» (рис. 12.16) устанавливаются необходимые параметры и выбирается имя файла. При этом не следует устанавливать переключатель <Связь с файлом>, чтобы содержимое файла оказалось внедренным;

§ нажать кнопку <ОК>.

Рис. 12.15. Окно «Специальная вставка» в текстовом процессоре Word

Рис. 12.16. Окно «Вставка файла» в текстовом процессоре Word

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

В составной документ новый объект внедряется следующим образом:

§ в составном документе указывается место внедрения;

§ вводится команда Вставить объект (в среде Word – пункт Объект управляющего меню Вставка);

§ в диалоговом окне «Вставка объекта» (рис. 12.17) выбирается тип внедряемого объекта, т.е. приложение-источник. Флажок <Связь с файлом> устанавливать не следует, для того чтобы объект оказался внедренным;

§ нажимается кнопка <ОК>;

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

Рис. 12.17. Окно «Вставка объекта» в текстовом процессоре Word

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

§ выбрать соответствующую команду в управляющем или контекстном меню;

§ дважды щелкнуть левой кнопкой мыши на внедренном объекте.



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

Рис. 12.18. Процедура связывания объектов по технологии OLE

Связывание объекта

При просмотре или распечатке составного документа связанный объект ничем не отличается от внедренного. Различие проявляется лишь при редактировании объекта. Связанный объект всегда находится в документе-источнике, а в составном документе-приемнике хранится ссылка (указание местонахождения) на файл с этим документом (рис. 12.18).

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

Технологией связывания объекта целесообразно пользоваться в следующих случаях:

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

§ объект занимает слишком много места и затрудняет работу с составным документом;

§ при недостатке внешней памяти.

Создание связанных объектов в составном документе возможно двумя способами:

§ из открытого документа. При этом в составной документ можно включить лишь некоторый фрагмент из документа-источника;

§ из файла. При этом документ-источник полностью включается в составной документ.

Обратите внимание! Для связывания объекта необходимо, чтобы объект был сохранен в файле как документ или его часть.

Связывание объекта из открытого документа выполняется следующим образом:

§ в приложении-источнике выделяется объект, который будет связываться;

§ выделенный объект переносится в буфер обмена с помощью команды Копировать ;

§ осуществляется переход в приложение-приемник, в котором формируется составной документ, и указатель мыши устанавливается в место вставки объекта;

§ вводится команда Специальная вставка ;

§ в диалоговом окне «Специальная вставка» отмечается кнопка выбора <Связать>, указывается способ вставки объекта (в обычном виде или в виде значка) и нажимается кнопка <ОК>.

Связывание с файлом (на примере текстового процессора Word) состоит в следующем:

§ в составном документе указывается место вставки;

§ вводится команда Файл из меню Вставка ;

§ в диалоговом окне «Вставка файла» (см. рис. 12.16) устанавливаются флажок <Связь с файлом> и другие необходимые параметры, затем выбирается документ, в котором хранится объект;

§ нажимается кнопка <ОК>.

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

Поскольку связанные объекты хранятся отдельно от составного документа в своих документах-источниках, важно иметь сведения о связях составного документа. Просмотреть, обновить и изменить связи составного документа можно в диалоговом окне «Связи» («Links»), которое, например, в приложении Word вызывается командой Связи из меню Правка (рис. 12.19). Это диалоговое окно содержит информацию о связях данного объекта:

§ спецификацию (путь) файла;

§ тип или формат объекта;

§ режим обновления объекта в составном документе – автоматическое или ручное (по запросу).

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

Рис. 12.19. Диалоговое окно «Связи» в текстовом процессоре Word

Введение

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

Развитие информатизации общества тесно связано с развитием вычислительной техники.

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

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

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

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

Понятие OLE

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

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

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

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

Однако, технология OLE использует архитектуру "толстого клиента", то есть сетевой ПК с избыточными вычислительными ресурсами. Это означает, что тип файла либо программа, которую пытаются внедрить, должна присутствовать на машине клиента. Например, если OLE оперирует таблицами Microsoft Excel, то программа Excel должна быть инсталлирована на машине пользователя.

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

OLE сервера и клиенты взаимодействуют с системными библиотеками при помощи таблиц виртуальных функций (англ. virtual function tables, VTBL). Эти таблицы содержат указатели на функции, которые системная библиотека может использовать для взаимодействия с сервером или клиентом. Библиотеки OLESVR.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 стал надстройкой над архитектурой COM вместо использования VTBL. Новыми особенностями стали автоматизация технологии drag-and-drop, in-place activation и structured storage.

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

Подводя итог, можно сделать вывод, что OLE является набором средств, позволяющим легко подготавливать документы, включающие в себя данные, подготовленные в различных приложениях. Чтобы вы могли объединить данные, подготовленные в различных приложениях, необходимо, чтобы эти приложения поддерживали технологию OLE. Стандартные приложения Windows - Paintbrush, Write, Sound Recorder, Cardfile, Object Pakager поддерживают OLE. Кроме стандартных приложений Windows, многие другие приложения, разработанные фирмой Microsoft и другими независимыми фирмами, включают в себя поддержку OLE-технологии. Microsoft Word for Windows 2.0 и 6.0, Microsoft Excel 4.0 и 5.0, ZSoft PhotoFinish 2.0, Designer, FoxPro for Windows, Access и многие другие пакеты включают поддержку OLE-технологии.