|
|
Регистрация | << Правила форума >> | FAQ | Пользователи | Календарь | Поиск | Сообщения за сегодня | Все разделы прочитаны |
|
Опции темы | Поиск в этой теме | Опции просмотра |
#1
|
||||
|
||||
Обработка OnEvent в RunTime
Нужна помощь в работе с Event'ами. Создаю экземпляр класса SSHClient'а. (Компоненты SecureBridge)
У него есть событие OnServerKeyValidate, когда сервер передаёт ключ авторизации. Мне нужно его принять. Для этого надо в этом событии параметру Accept присвоить значение True. Как это сделать? Код:
SSHClient := TscSSHClient.Create(nil); try SSHClient.HostName := Settings.ReadString('HostName'); SSHClient.Port := Settings.ReadInteger('Port'); SSHClient.User := Settings.ReadString('User'); SSHClient.Password := Settings.ReadString('Password'); SSHClient.KeyStorage := KeyStorage; SSHClient.OnServerKeyValidate .. // принимает Sender : TObject; NewKey: TscKey; Accept : boolean end; finally SSHClient.Free; end; |
#2
|
||||
|
||||
Код:
... type TForm1 = class(TForm) procedure MyServerKeyValidate(...); ... procedure TForm1.MyServerKeyValidate(...); begin Accept:= true; end; ... ... SSHClient.OnServerKeyValidate:= MyServerKeyValidate; ... Помогаю платно. Помогаю иногда бесплатно. Последний раз редактировалось @Rafa3L, 08.03.2015 в 00:11. |
#3
|
||||
|
||||
Цитата:
Консольное приложение не имеет экземпляра TForm. Получается мне обязательно нужно создать какой-то класс? Без него никак не обойтись? и что такое 4250?) |
#4
|
||||
|
||||
Скорее не какой-то, а класс-наследник TscSSHClient.
jmp $ ; Happy End! The Cake Is A Lie. |
#5
|
||||
|
||||
Не понимаю.
Эта процедура есть в самом классе. Просто мне некуда вытащить невизуальные компоненты, и дважды кликнуть в Event'ах на нужном. В конечном Итоге я делаю нечто вроде такого? Код:
type TMyscSSHClient= class(TscSSHClient) ... public procedure MyServerKeyValidate(Sender: TObject; NewKey: TscKey; Accept : boolean); end; procedure TMyscSSHClient.MyServerKeyValidate(Sender: TObject; NewKey: TscKey; Accept : boolean); begin Accept := true; end; |
#6
|
||||
|
||||
Цитата:
Я только не понимаю, как в списке параметров Код:
(Sender: TObject; NewKey: TscKey; Accept : boolean) jmp $ ; Happy End! The Cake Is A Lie. |
#7
|
||||
|
||||
Код:
(Sender: TObject; NewKey: TscKey; var Accept : boolean) Последний раз редактировалось Uniq!, 08.03.2015 в 20:04. |