Что такое ole сервер ole клиент приведите примеры

Что такое ole сервер ole клиент приведите примеры

Лекция №7. Основные режимы работы с пакетом

Ms Office со встраиванием объектов OLE

1. Принципы внедрения и связывания объектов

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

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

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

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

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

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

Возможность использования в одном документе объектов различной природы является очень мощным инструментом Windows. Она основана на так называемой концепции внедрения и связывания объектов (OLE — Object Linking and Embedding). Иными словами, благодаря специальному механизму связывания и встраивания объектов OLE в текст могут быть импортированы различные объекты (рисунки, иллюстрации, графики, фотографии и т.п.), подготовленные другими программами.

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

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

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

Что такое ole сервер ole клиент приведите примеры. Смотреть фото Что такое ole сервер ole клиент приведите примеры. Смотреть картинку Что такое ole сервер ole клиент приведите примеры. Картинка про Что такое ole сервер ole клиент приведите примеры. Фото Что такое ole сервер ole клиент приведите примеры

Рисунок 1

Так, мы можем вставить в документ, например, диаграмму из пакета Microsoft Excel. Она содержит статистические данные исследования компании «GfK Marktforschung,2003» и называется «Отношение европейцев к рекламе (%)».

Что такое ole сервер ole клиент приведите примеры. Смотреть фото Что такое ole сервер ole клиент приведите примеры. Смотреть картинку Что такое ole сервер ole клиент приведите примеры. Картинка про Что такое ole сервер ole клиент приведите примеры. Фото Что такое ole сервер ole клиент приведите примеры

Рисунок 2

Мы можем изменить эту диаграмму уже в самом документе Ms Word, нажав по ней дважды левой кнопкой мыши. После этого на экране появиться такое же окно, как и табличном процессоре Excel. Там мы сможем произвести все необходимые изменения. Например, если уменьшить процентное соотношение опрошенных россиян, которые считают, что реклама развлекает, то соответствующий столбик на этой диаграмме понизится.

Что такое ole сервер ole клиент приведите примеры. Смотреть фото Что такое ole сервер ole клиент приведите примеры. Смотреть картинку Что такое ole сервер ole клиент приведите примеры. Картинка про Что такое ole сервер ole клиент приведите примеры. Фото Что такое ole сервер ole клиент приведите примеры

Рисунок 3

Что такое ole сервер ole клиент приведите примеры. Смотреть фото Что такое ole сервер ole клиент приведите примеры. Смотреть картинку Что такое ole сервер ole клиент приведите примеры. Картинка про Что такое ole сервер ole клиент приведите примеры. Фото Что такое ole сервер ole клиент приведите примеры

Рисунок 4

Также в документ можно вставить слайд или презентацию, выполненную в программе Ms Power Point. Это может быть презентация рекламного агентства, нового продукта, какого-либо мероприятия и т.д. Можно вставить уже имеющуюся в файле презентацию, а можно сначала выбрать вставку объекта презентации, а потом только её создать. Удобнее вставить в документ не саму презентацию, а её значок.

Что такое ole сервер ole клиент приведите примеры. Смотреть фото Что такое ole сервер ole клиент приведите примеры. Смотреть картинку Что такое ole сервер ole клиент приведите примеры. Картинка про Что такое ole сервер ole клиент приведите примеры. Фото Что такое ole сервер ole клиент приведите примеры

Таким же образом в документ можно вставлять точечный рисунок, выполненный самостоятельно в «Paint». Например, это может быть разработка логотипа фирмы.

Что такое ole сервер ole клиент приведите примеры. Смотреть фото Что такое ole сервер ole клиент приведите примеры. Смотреть картинку Что такое ole сервер ole клиент приведите примеры. Картинка про Что такое ole сервер ole клиент приведите примеры. Фото Что такое ole сервер ole клиент приведите примеры

Рисунок 5

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

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

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

Что такое ole сервер ole клиент приведите примеры. Смотреть фото Что такое ole сервер ole клиент приведите примеры. Смотреть картинку Что такое ole сервер ole клиент приведите примеры. Картинка про Что такое ole сервер ole клиент приведите примеры. Фото Что такое ole сервер ole клиент приведите примеры

Рисунок 6

Например, свяжем наш документ с диаграммой:

Что такое ole сервер ole клиент приведите примеры. Смотреть фото Что такое ole сервер ole клиент приведите примеры. Смотреть картинку Что такое ole сервер ole клиент приведите примеры. Картинка про Что такое ole сервер ole клиент приведите примеры. Фото Что такое ole сервер ole клиент приведите примеры

Что такое ole сервер ole клиент приведите примеры. Смотреть фото Что такое ole сервер ole клиент приведите примеры. Смотреть картинку Что такое ole сервер ole клиент приведите примеры. Картинка про Что такое ole сервер ole клиент приведите примеры. Фото Что такое ole сервер ole клиент приведите примеры

Рисунок 7

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

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

2. Сравнение методов внедрения и связывания

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

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

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

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

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

Вопросы:

1. Какие основные задачи позволяет выполнять операционная система Windows?

2. Что представляет собой концепция OLE?

3. Какие объекты можно вставлять в документ с помощью этой концепции?

4. Какие существуют основные способы внедрения объектов в документ?

5. Какие существуют основные способы связывания объектов с документом?

6. Чем отличается метод внедрения объекта от метода связывания?

7. В каких областях оба метода находят своё рациональное применение?

8. Что такое OLE – сервер и OLE – клиент?

9. Приведите примеры OLE – сервера и OLE – клиента.

Источник

Технология OLE

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

Что такое ole сервер ole клиент приведите примеры. Смотреть фото Что такое ole сервер ole клиент приведите примеры. Смотреть картинку Что такое ole сервер ole клиент приведите примеры. Картинка про Что такое ole сервер ole клиент приведите примеры. Фото Что такое ole сервер ole клиент приведите примеры

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

История появления

Предшественницей новой технологии является Dynamic Data Exchange – DDE, программа, которая работала по протоколу несинхронизированной связи. На практике это выглядело следующим образом: для установления канала связи между данными сервера после передачи запроса требовалось ожидание отклика. То есть, приложение должно было распознать возможные ошибки, существовал риск прерывания связи, тайм-аутов.

Для улучшения качества работы DDE требовалось новое решение, которое и воплотилось в технологии OLE.В чем ее сущность? Object Linking and Embedding (аббревиатура – OLE) – это возможность связывать и внедрять объекты, то есть, программа обеспечивает активацию нового объекта непосредственно в документе.

Что такое ole сервер ole клиент приведите примеры. Смотреть фото Что такое ole сервер ole клиент приведите примеры. Смотреть картинку Что такое ole сервер ole клиент приведите примеры. Картинка про Что такое ole сервер ole клиент приведите примеры. Фото Что такое ole сервер ole клиент приведите примеры

Новый принцип работы в буфере обмена (в области оперативной памяти, предназначенной для временного хранения созданного объекта) совершенствовался:

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

OLE на практике

Итак, разработка корпорации Microsoft, внедренная в современные операционные системы, позволяет через буфер обмена работать с разными программами, переносить информационные блоки из одной в другую, формировать и редактировать составной документ из файлов разного типа. Этой возможностью ежедневно пользуются, например, при работе с CorelDRAW или графическим редактором WordPad.

Что такое ole сервер ole клиент приведите примеры. Смотреть фото Что такое ole сервер ole клиент приведите примеры. Смотреть картинку Что такое ole сервер ole клиент приведите примеры. Картинка про Что такое ole сервер ole клиент приведите примеры. Фото Что такое ole сервер ole клиент приведите примеры

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

Возможности

Object Linking and Embedding обеспечивает новый качественный уровень работы и взаимодействия файлов разного типа и открывает следующие возможности:

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

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

Как понятно из названия технологии, основных функций у нее две:

Рассмотрим, что дает каждая из них пользователям в повседневной работе.

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

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

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

Источник

Введение в OLE –автоматизацию

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

Позднее связывание через диспинтерфейс клиента на Delphi

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

Следующий пример иллюстрирует вызовы метода автоматизации. Фрагмент запустит программу Microsoft Word и сохранит в файле документ из двух строк. Функция CreateOleObject (определенная в ComObj) возвращает ссылку на IDispatch объекта автоматизации, совместимую по присваиванию с вариантным типом.

Word.Insert(‘This is the first line’#13);

Word.Insert(‘This is the second line’#13);

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

Некоторые серверы автоматизации позволяют опускать параметры вызова метода, принимая их значения по умолчанию. Например,

Word.FileSaveAs(‘test.doc’, Password := ‘secret’);

Word.FileSaveAs(Password := ‘secret’, Name := ‘test.doc’);

Параметры методов автоматизации могут быть следующих типов: integer, real, string, Boolean и variant. Параметр передается по ссылке, если выражение параметра состоит только из ссылки на переменную типа Byte, Smallint, Integer, Single, Double, Currency, TDateTime, AnsiString, WordBool или Variant. Если выражение имеет какой-либо другой тип, или если оно не является только переменной, параметр передается значением. Передача параметра по ссылке методу, ожидающему параметр-значение, заставляет COM выбирать значение из параметра-ссылки. Наоборот, передача параметра-значения методу, который ожидает параметр-ссылку, вызывает ошибку.

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

Еще один важный вопрос: где программист может получить сведения о реализуемых сервером объектах автоматизации? В данном случае наиболее вероятный источник информации для рассматриваемого примера – интерактивная справочная система Microsoft Word с полным списком объектов в этом приложении, которые можно использовать для автоматизации, их методов и свойств и вообще всего, что необходимо для обращения к их сервисам. В общем случае приложения, предоставляющие сервисы через автоматизацию, содержат весьма подробную документацию на сей счет.

Учебный пример клиента Microsoft Word

with Table1 do while not Eof do begin

Ниже приведен полный код генератора отчета, который реализован как отклик на событие нажатия кнопки:

procedure TForm1.Button1Click(Sender: TObject);

var W,D,S,PosBeg,PosEnd: Variant; i,j: Integer; ws: WideString;

with Table1 do begin

DatabaseName:=’DBDEMOS’; TableName:=’country.db’; Open

Источник

OLE-серверы и OLE-клиенты

Что такое ole сервер ole клиент приведите примеры. Смотреть фото Что такое ole сервер ole клиент приведите примеры. Смотреть картинку Что такое ole сервер ole клиент приведите примеры. Картинка про Что такое ole сервер ole клиент приведите примеры. Фото Что такое ole сервер ole клиент приведите примеры Что такое ole сервер ole клиент приведите примеры. Смотреть фото Что такое ole сервер ole клиент приведите примеры. Смотреть картинку Что такое ole сервер ole клиент приведите примеры. Картинка про Что такое ole сервер ole клиент приведите примеры. Фото Что такое ole сервер ole клиент приведите примеры Что такое ole сервер ole клиент приведите примеры. Смотреть фото Что такое ole сервер ole клиент приведите примеры. Смотреть картинку Что такое ole сервер ole клиент приведите примеры. Картинка про Что такое ole сервер ole клиент приведите примеры. Фото Что такое ole сервер ole клиент приведите примеры Что такое ole сервер ole клиент приведите примеры. Смотреть фото Что такое ole сервер ole клиент приведите примеры. Смотреть картинку Что такое ole сервер ole клиент приведите примеры. Картинка про Что такое ole сервер ole клиент приведите примеры. Фото Что такое ole сервер ole клиент приведите примеры

Что такое ole сервер ole клиент приведите примеры. Смотреть фото Что такое ole сервер ole клиент приведите примеры. Смотреть картинку Что такое ole сервер ole клиент приведите примеры. Картинка про Что такое ole сервер ole клиент приведите примеры. Фото Что такое ole сервер ole клиент приведите примеры

Что такое ole сервер ole клиент приведите примеры. Смотреть фото Что такое ole сервер ole клиент приведите примеры. Смотреть картинку Что такое ole сервер ole клиент приведите примеры. Картинка про Что такое ole сервер ole клиент приведите примеры. Фото Что такое ole сервер ole клиент приведите примеры

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

Вопросы:

1. Какие основные задачи позволяет выполнять операционная система Windows?

2. Что представляет собой концепция OLE?

3. Какие объекты можно вставлять в документ с помощью этой концепции?

4. Какие существуют основные способы внедрения объектов в документ?

5. Какие существуют основные способы связывания объектов с документом?

6. Чем отличается метод внедрения объекта от метода связывания?

7. В каких областях оба метода находят своё рациональное применение?

8. Что такое OLE – сервер и OLE – клиент?

9. Приведите примеры OLE – сервера и OLE – клиента.

Лекция №8. Internet и его использование в рекламной деятельности

Источник

Что такое ole сервер ole клиент приведите примеры

Из статьи Вы узнаете основные сведения об OLE, некоторые вещи относительно OLE 2 и OLE Automation. В статье рассказывается об использовании объекта TOLEContainer для построения OLE приложения в Delphi.

Основы OLE

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

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

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

Объект TOLEContainer

Что такое ole сервер ole клиент приведите примеры. Смотреть фото Что такое ole сервер ole клиент приведите примеры. Смотреть картинку Что такое ole сервер ole клиент приведите примеры. Картинка про Что такое ole сервер ole клиент приведите примеры. Фото Что такое ole сервер ole клиент приведите примеры

Рис.1: Стандартный диалог Windows для определения OLE объекта.

В этом диалоге есть список всех зарегистрированных в системе OLE-серверов (регистрация происходит при инсталляции программы). Тип OLE-объекта определяется как раз тем сервером, который Вы укажете. Если Вы создаете новый объект (Create New), то при нажатии кнопки OK запустится программа OLE-сервер, в которой и формируется новый объект. После выхода из программы-сервера новый OLE объект включается (embedded object) в программу. OLE объект можно создать используя уже имеющийся файл в формате одного из OLE-серверов. Для этого нужно выбрать пункт Create from File (см. рис.2)

Что такое ole сервер ole клиент приведите примеры. Смотреть фото Что такое ole сервер ole клиент приведите примеры. Смотреть картинку Что такое ole сервер ole клиент приведите примеры. Картинка про Что такое ole сервер ole клиент приведите примеры. Фото Что такое ole сервер ole клиент приведите примеры

Рис.2: Выбор OLE-объекта, хранящегося в файле.

Выбранный объект можно как включить в приложение, так и присоединить, отметив пункт Link.

Итак, давайте при создании нашего проекта создадим новый объект, выбрав для этого, например, Microsoft Word Document (рис.1). Нажмите OK и после того, как запустится MS Word, наберите там любой текст («Это OLE-объект Microsoft Word document»). Для завершения работы в меню есть специальный пункт «File|Close and Return to Form1» (Win’95+MS Word 7.0). Запустите проект, он будет выглядеть примерно так:

Что такое ole сервер ole клиент приведите примеры. Смотреть фото Что такое ole сервер ole клиент приведите примеры. Смотреть картинку Что такое ole сервер ole клиент приведите примеры. Картинка про Что такое ole сервер ole клиент приведите примеры. Фото Что такое ole сервер ole клиент приведите примеры

Рис.3: Простое приложение с OLE-контейнером.

. Если во время дизайна Вы выбираете объект для включения в OLE-контейнер, то он полностью записывается в файл формы (FORM1.DFM) и в дальнейшем прикомпилируется к EXE файлу. В случае очень больших объектов это может привести во время дизайна к длительным паузам и даже к возникновению ошибки «Out of resource». Поэтому рекомендуется большие объекты делать присоединенными (linked).

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

Пример OLE приложения

Что такое ole сервер ole клиент приведите примеры. Смотреть фото Что такое ole сервер ole клиент приведите примеры. Смотреть картинку Что такое ole сервер ole клиент приведите примеры. Картинка про Что такое ole сервер ole клиент приведите примеры. Фото Что такое ole сервер ole клиент приведите примеры

Рис.4: MDI OLE приложение.

На рис.4 показан пример MDI приложения, содержащий два дочерних окна с OLE объектами. Для создания нового OLE объекта нужно выбрать пункт меню File|New и далее Edit|Insert Object. Появится стандартный диалог Windows для инициализации OLE объекта (см. рис.1). Если приложение OLE-сервер имеет возможность сохранять информацию об OLE объекте в Clipboard, то проинициализировать объект можно с помощью пункта меню Edit|Paste Special.

Достаточно интересной является возможность применения техники drag-and-drop в применении к OLE объектам. Запустите MS Word (разместите его окно так, чтобы было видно и OLE приложение), наберите какой-нибудь текст, выделите его и с помощью мышки перетащите и бросьте на главное MDI окно приложения. Появится новое дочернее окно с OLE контейнером, содержащим этот текст. Программирование данной возможности достаточно сложно. Полное описание технологии построения данного OLE приложения есть в документации в коробке с Delphi (User’s guide), этому посвящена отдельная глава.

Сохранение OLE объекта в базе данных

Иногда необходимо хранить OLE объекты не в файлах, а в базе данных (BLOB поле в таблице). Конечно, в данном случае OLE объект должен быть присоединенным (embedded) в целях переносимости. К сожалению, в стандартной поставке Delphi нет специального объекта типа TDBOLEContainer для данных целей, но OLE объект можно сохранять и восстанавливать с помощью методов SaveToStream и LoadFromStream. Например:

Источник

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *