Шаг 19.
Технология OLE. Создание контейнера OLE

    На этом шаге мы рассмотрим cоздание контейнера OLE.

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

    Начальный процесс создания контейнера.

  1. Сначала запустите AppExpert из интегрированной оболочки Borland C++ версии 4.5. В первом блоке диалога следует задать имя и каталог проекта. Поместим проект в каталог BC45\SOURCE\OLECNTR. Назовём проект OLECNTR.
  2. После выбора OK в блоке диалога задания имени и каталога проекта отобразится раздел AppExpert - блок диалога Application General Options (Основные опции приложения). Этот блок диалога позволяет задать конфигурацию приложения, генерируемого AppExpert. Модифицируем несколько опций.
  3. Первая опция - этол Application: Summary. Следует заменить параметр по умолчанию Multiple document interface на Single document interface.
  4. Второе изменение - указать AppExpert, что ваша программа будет контейнером OLE. Это изменение следует произвести в пункте Application: OLE 2 Options, имеющим ряд опций OLE 2, которые можно задать. Так как создается контейнерное приложение OLE, будем оперировать только элементами блока группы OLE 2 Conteiner (поищите его в средней верхней части диалога). Следует выбрать копку ячейки пометки Application is an OLE сonteiner. На рисунке 1 демонстрируются изменения, проведенные в пункте Application: OLE 2 Options.


    Рис.1. Пункт Application: OLE2 Options приложения AppExpert для проекта OLECNTR

  5. Так же можно заполнить пункт Application: Admin Options блока диалога AppExpert. С его помощью можно задать в приложении заметку об авторском праве, имя и информацию о версии. Все элементы Application: Admin Options необязательны.
  6. Все подпункты пункта Main Window не нуждаются в модификациях, их следует оставить заданными значениями по умолчанию. Для данного приложения нет необходимости менять что-либо в эти пунктах.
  7. Пункт MDI Child/View неприменим для этого проекта, поэтому нет нужды что-нибудь в нем менять.
  8. Теперь выберите кнопку Generate в нижней части блока диалога AppExpert Application General Options. AppExpert запросит у вас подтверждение, действительно ли вы намерены создать проект; после принятия подтверждения AppExpert сгенерирует приложение.

    Теперь следует проверить программу в действии. Проще всего испытать контейнерную программу OLECNTR во взаимодействии с программой OLESVR, созданную ранее.

    Для этого запустите OLECNTR, откройте новый документ с помощью элементов меню File | New. Затем из меню Edit выберите Insert New Object... При этом отобразится окно диалога OLE Insert Object, как это продемонстрировано на рисунке 2.


Рис.2. Приложение OLECNTR и окно диалога Insert Object

    После того как выберете объект OLE, который вы хотите вставить в документ, нажмите OK в блоке диалога Insert Object, тогда в контейнере отобразится результат вашего действия (рисунок 3).


Рис.3. Приложение OLECNTR с объектом из сервера OLESVR

    AppExpert создает приложение-контейнер OLE, не требующее каких-либо модификаций для того, чтобы в него можно было вставить объект OLE. Необходимая поддержка OLE содержится в меню Edit (Paste Special, Paste Link, Insert Object, Links и Object). Контейнер в том виде, каким его сгенерировал AppExpert, управляет внедренными объектами, для их отображения требуется связь с другим приложением-сервером.

    Мы закончили рассматривать общие принципы и инструменты, применяемые при создании OLE-приложений в Borland C++ 4.5.




Предыдущий шаг Содержание