Энциклопедия C++ Builder



ОБЪЕКТНО-ОРИЕНТИРОВАННОЕ ПРОГРАММИРОВАНИЕ И C++ - часть 21


class MyOLEAutoClass : TAutoObject

{ _automated: void_fastcall function(void) _dispid(1000); };

Листинг 3.13. Объявление автоматизированного метода.

Правила видимости, определяемые этим ключевым словом, не отличаются от правил видимости, объявленных в секции public. Единственное отличие проявляется в том, что генерируемая компилятором информация о типах свойств и методов

OLE Automation, делает возможным создание автоматизированных серверов.

C++Builder поставляется вместе с примером (удивительным по внешней простоте и лаконичности кода) взаимодействия приложений контроллера и сервера посредством механизма OLE Automation. Этот пример проливает свет на данную методику, изложенную в системной документации весьма сбивчиво и туманно. Автоматизированный сервер

Autosrv демонстрирует использование:

• компонентных объектов TAutoObject и TAutoClassInfo;

• метода RegisterAutoClass автоматизированного объектного класса для регистрации сервера;

• свойств и методов, объявленных с ключевым словом _automated. Контроллер Autocon управляет сервером и демонстрирует:

• установку и выборку свойств объекта сервера;

• использование вариантов (детальная информация об типе Variant содержится в параграфе 3.6.1.6 "Расширенные типы данных Delphi".

Чтобы испытать на практике, что дает взаимодействие приложений OLE Automation, выполните следующие действия:

=> По команде главного меню File [ Open Project откройте диалог выбора проектов. => Войдите в каталог \...\CBuilder\Examples\Apps\Autosrv => Выберите проектный файл с именем Autosrv и нажмите кнопку

Open.

=> Командой главного меню Run | Run запустите процесс компиляции и сборки автоматизированного сервера. => Снова откройте диалог выбора проектов, войдите в каталог

\...\CBuilder\Examples\Apps\Autocon,

выберите проектный файл с именем

Autocon и нажмите кнопку Open. => Запустите процесс компиляции и сборки контроллера.

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




Содержание  Назад  Вперед