Шаг 2.
Технология OLE. Некоторые термины OLE
На этом шаге мы рассмотрим некоторые термины OLE
Определение OLE звучит следующим образом:
это методология, позволяющая продуктам различных разработчиков совместно использовать данные или объекты.
Под понятие объекта OLE попадает все, что может иметь машинное представление.
Объектом может быть документ текстового процессора, электронная таблица, ячейка внутри электронной таблицы, видеоклип или даже приложение.
Такое понимание расходится со стандартной интерпретацией, в которой объекты - данные, над которыми производятся манипуляции посредством функций и процедур.
В С++ объекты привязаны к одной машине, т.е. объект не может покинуть пределы данной машины. OLE-объекты не имеют таких ограничений.
Ниже приводится список общих терминов, используемых в OLE.
- Сервер - приложение, поставляющее некоторые данные, которые можно как внедрить, так и связать с документом (подобным отчету, описанному ранее).
Сервер может быть или приложением (подобным Microsoft Excel), или специализированным приложением DLL, которое может функционировать только как сервер OLE.
- Контейнер - приложение, которое может иметь один или несколько объектов OLE, содержащихся вместе с документом контейнера.
Эти объекты OLE могут быть или связаны, или внедрены.
- Связанные объекты - когда объект OLE связан, данные объекта не содержатся вместе с документом контейнера.
Вместо этого в контейнер помещается только представление данных (например, битовый образ) и информация о том, где находятся настоящие данные.
Поскольку содержащийся в контейнере документ не хранит копии данных объекта, за счет этого он часто имеет меньшие размеры.
К числу недостатков можно отнести тот факт, что, если объект необходимо модифицировать, производительность контейнера (подобная перерисовке) может ухудшиться из-за времени, необходимого для доступа к настоящему объекту.
- Внедренные объекты - внедренный объект OLE запоминается в документе контейнера вместе с данными и другой информацией.
Если в документе используются внедренные объекты, его размер увеличивается на размер этих объектов.
Это может привести к солидным увеличениям объема документа, особенно в случае, если пользователь не представляет себе, насколько велики внедряемые объекты.
- Автоматизация - приложение, которое экспонирует контейнерным приложениям программируемые объекты.
Эти объекты называются клиентами автоматизации. Обычные серверы автоматизации вставляют свои меню в главное окно контейнерного приложения всякий раз, когда выбирается их объект OLE.
Затем пользователь может модифицировать объект OLE без необходимости переключения между отдельными приложениями.
- "Перетащить и опустить" - функциональное свойство OLE, которое используется для ускоренного копирования и вставки данных.
Аналогичный процесс происходит при использовании команд Сору и Paste буфера обмена.
Однако "перетащить и опустить" OLE - гораздо более мощное средство, чем-то, что поддерживает программа Администратор файлов,
поскольку в администраторе файлов проводятся операции только с именами файлов, в то время как OLE работает с полноценными объектами.
- Визуализация - внедренные или связанные объекты OLE 2 в неактивном состоянии должны отображаться.
Процесс отображения неактивного объекта OLE 2 называется визуализацией.
- Буфер обмена (Clipboard) - OLE пользуется буфером обмена для наведения мостов между OLE-приложениями.
Например, Excel помещает данные в буфер обмена с использованием специального формата, позволяющего OLE-программам получить доступ к этим данным с помощью OLE.
Со следующего шага мы начнем рассматривать создание простых OLE-программ.
Предыдущий шаг
Содержание
Следующий шаг