Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
лекции 2005 / P4 / Технология автоматизации.doc
Скачиваний:
159
Добавлен:
16.04.2013
Размер:
191 Кб
Скачать

Компоненты системы Delphi для взаимодействия с серверами автоматизации msOffice.

Эти компоненты расположены на вкладке Service палитры компонентов. Есть компоненты доступа не только к самим серверам, но к тем компонентам, которые входят в состав серверов (документ, рабочая книга, презентация и т.д.). Все компоненты являются потомками базового класса COM-серверов, т.е. базовый тип - TOLEServer. Потомки этого базового типа создаются при импорте библиотек типов. При использовании COM-серверов для доступа к приложениям MSOffice в форму помещается специальный компонент WordApplication (с закладки Service). После этого в программе нужно предусмотреть вызовы методов этого объекта.

Компоненты системы Bulder C++ для взаимодействия с серверами автоматизации MSOffice.

Эти компоненты расположены на вкладке Office2k палитры компонентов. Здесь тоже есть компоненты доступа не только к самим серверам, но к разнообразным компонентам, которые входят в состав серверов (документ, рабочая книга, презентация и т.д.).

Технология ActiveX.

Первоначально элементы, создаваемые по технологии ActiveX назывались управляющими элементами OLE или OCX. Затем фирма Microsoft внесла некоторые изменения в элементы OCX, обеспечив ряд новых возможностей, сделавших эти элементы более подходящими для применения в Интернет приложениях. Чтобы отразить наличие новых возможностей название “управляющий элемент OLE” было заменено на название “элемент ActiveX”. С учетом понятий, используемых в технологии автоматизации, элемент ActiveX является внутренним сервером автоматизации. Т.о. технология ActiveX представляет собой адаптацию к Интернет среде существующих технологий фирмы Microsoft, которые базируются на OLE и OCX. Первоначально термин ActiveX относился к технологиям, которые были связаны именно с Интернетом. Однако со временем значение термина ActiveX было расширено, и его стали использовать для обозначения различных технологий фирмы Microsoft на основе компонентной модели объектов, которые раньше были известны под названием OLE.

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

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

Такой способ разработки программного продукта из готовых частей называется компонентным программированием.

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

  1. систему можно наращивать постепенно - по мере готовности частей;

  2. значительно упрощается процесс отладки, т.к. каждый компонент приложения можно отлаживать отдельно;

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

  4. компоненты приложения можно повторно использовать в последующих разработках;

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

  6. компоненты могут быть написаны на разных языках программирования;

  7. значительно упрощается модернизация приложения, т.к. его можно модифицировать по частям, поставляя новые версии компонентов.

Технология ActiveX хорошо соответствует идее компонентного программирования и в настоящее время является, своего рода, стандартом компонентного подхода для разработки Windows приложений.

Возможность создания и использования элементов ActiveX реализована практически во всех современных системах разработки программного обеспечения, например, Visual Basic, Visual C++, Borland Delphi, Borland C++ Builder и ряд приложений с использованием языка Java.

Несмотря на большое кол-во достоинств, элементы ActiveX не лишены и некоторых недостатков:

1) полноценная поддержка ActiveX имеется только для ОС Windows;

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

ActiveX Data Objects (ADO).

Объекты данных построены как элементы ActiveX. Компоненты, которые созданы в соответствии с технологией ADO, не требуют установки на клиентской машине ядра процессора БД BDE.

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

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

На машине сервера данных (файл-сервер, сервер БД) устанавливается т.н. провайдер данных - специальная надстройка над технологией OLE DB. Провайдер данных понимает запросы объектов ADO и умеет переводить эти запросы в нужные действия с данными. Взаимодействие объектов ADO и провайдера данных осуществляется на основе универсальной для Windows технологии ActiveX. Причем провайдер реализуется как COM-сервер, а ADO-объекты как COM-клиенты.