Кент Рейсдорф. BORLAND C++BUILDER. Раздел 4
Кент Рейсдорф. BORLAND C++BUILDER. Страница 440
3. Установите курсор на Auto2.h в строке #include "Auto2.h" и нажмите Ctrl+Enter для загрузки этого файла в редактор кода.
4. Скопируйте следующие строки:
из раздела private определения класса ButtonServer (файл Auto2.h) в раздел private определения вашего класса TMyOLEEditServer (файл unit2.h).
5. Скопируйте следующую строку:
property AnsiString EditStr = {read=GetEditStr, write=SetEditStr};
из раздела___ automated определения класса ButtonServer (файл Auto2.h)
в раздел automated определения класса TMyOLEEditServer (файл
unit2.h).
6. Добавьте следующую строку в модуль unit2.cpp сразу за строкой #include "unit2.h":
iinclude "unitl.h"
Это сделает возможным доступ к форме unitl (а именно, к ее компоненту Editl) из модуля unit2, в котором определен ваш автоматизированный объект.
7. Скопируйте следующие строки:
8. Сохраните проект и нажмите Ctrl+F9 для его компиляции.
Для проверки работы вашего нового сервера OLE потребуется программа-клиент, которая создаст экземпляр автоматизированного объекта и будет вызывать его методы. Чтобы не создавать новое приложение целиком, можно снова использовать демонстрационную программу C++Builder. Загрузите проект Autocon, который вы компилировали и запускали ранее. После загрузки сделайте копию строки
AutoServer = CreateOleObj ect("BCBTestOLE.EditServer");
и закомментируйте ее. Данный фрагмент кода должен выглядеть следующим образом:
Затем замените имя BCBTestOLE.EditServer (в незакомментированной строке) на MyAuto.MyOLEEditServer:
В результате приложение Autocon создаст экземпляр вашего автоматизированного объекта вместо того объекта, который был определен в Autosrv.
Окончив вносить изменения в Autocon, запустите приложение MyAuto извне С+-l-Builder, а затем запустите Autocon. Разместите окна приложений так, чтобы их можно было видеть одновременно.