M Y D E L P H I 7 . R U Самоучитель программирования  
 
  • Главная
  •  

     

    Компонент TDCOMConnection

    Компонент TDCOMConnection предоставляет транспорт на основе технологии Distributed COM и применяется в основном для организации транспорта в рамках локальной сети.

    Для настройки соединения DCOM в первую очередь необходимо задать имя компьютера, на котором функционирует сервер приложений. Для компонента TDCOMConnection это должен быть зарегистрированный сервер Автоматизации. Имя компьютера задается свойством

    property ComputerName: string;

    Если оно задано правильно, в списке свойства

    property ServerName: string;

    в Инспекторе объектов можно выбрать один из доступных серверов. При выборе сервера также автоматически заполняется свойство

    property ServerGUID: string;

    Причем для успешного соединения клиента с сервером приложений оба свойства должны быть заданы в обязательном порядке. Только имя сервера или только его GUID не обеспечат правильный доступ к удаленному объекту СОМ.

    Открытие и закрытие соединения осуществляется свойством

    property Connected: Boolean;

    или методами

    procedure Open/procedure Close;

    соответственно.

    Для организации передачи данных между клиентом и сервером компонент TDCOMConnection предоставляет интерфейс IAppServer

    property AppServer: Variant;

    который также может быть получен методом

    function GetServer: lAppServer; override;

    Свойство

    property ObjectBroker: TCustomObjectBroker;

    позволяет использовать экземпляр компонента TsimpleObjectBroker для получения списка доступных серверов по время выполнения (см. ниже).

    Методы-обработчики компонента TDCOMConnection представлены в табл. 20.1. 

    Таблица 20.1. Методы-обработчики событий компонента TDCOMConnection

    Объявление

    Описание

    property Af terConnect: TNotifyEvent;

    Вызывается после установления соединения

    property AfterDisconnect: TNotifyEvent;

    Вызывается после разрыва соединения

    property BeforeConnect: TNotifyEvent;

    Вызывается перед установлением соединения

    property BeforeDisconnect: TNotifyEvent;

    Вызывается перед разрывом соединения

    type TGetUsernameEvent = procedure ( Sender : TOb j ect ; var Username: string) of object;

    property OnGetUsername : TGetUsernameEvent ;

    Вызывается непосредственно перед появлением диалога удаленной авторизации пользователя. Для этого свойство LoginPrompt должно иметь значение True. Параметр Username может содержать имя пользователя по умолчанию, которое появится в диалоге

    type TLoginEvent = procedure ( Sender: TOb j ect; Username, Password: string) of object;

    property OnLogin: TLoginEvent;

    Вызывается после открытия соединения, если свойство LoginPrompt имеет значение True. Параметры Username и Password содержат имя пользователя и пароль, введенные при авторизации