Кент Рейсдорф. BORLAND C++BUILDER. Раздел 4
Кент Рейсдорф. BORLAND C++BUILDER. Страница 438
возможно благодаря использованию автоматизированного объекта OLE, определенного в Autosrv.
Функция Initialization) регистрирует EditServer в Windows, чтобы приложение, поддерживающее OLE, могло его использовать. Этот шаг необходим для работы с автоматизированными объектами OLE. Initialization) вызывает RegisterButtonServer(), который устанавливает связь между классом Button- Server и BCBAutoSrv.EditServer. Исходный текст RegisterButtonServer() приведен в листинге 15.3.
Обратите внимание на присваивания значений членам AutoClass и ProgID. Эти присваивания связывают BCBAutoSrv.EditServer и ButtonServer, позволяя OLE-приложениям ссылаться на автоматизированный объект ButtonServer, используя BCBAutoSrv.EditServer.
Создание собственного автоматизированного сервера
Вы можете создавать свои собственные автоматизированные серверы OLE, используя мастер автоматизированного объекта (Automation Object Wizard), включенный в C++Builder. Создание простого автоматизированного сервера выполняется следующим образом:
1. Выберите в главном меню C++Builder пункт File | New Application для создания нового приложения. Это приложение станет вашим автоматизированным сервером OLE. Для управления сервером и направления к нему запросов другие приложения будут использовать объект Automation.
2. Измените значение свойства Caption главной формы нового приложения на My OLE Automation Server. Это сделает назначение вашего приложения немного более понятным.
3. Выберите в главном меню пункт File | Save Project As и сохраните новое приложение. Сохраните главную форму как unitl.cpp, а сам проект как My Auto. так.
4. Поместите в форму один компонент TEdit.
5. Выберите в главном меню пункт File | New..., затем дважды щелкните на Automation Object в диалоговом окне New Items. После этого вы должны увидеть диалоговое окно, показанное на рис. 15.2.