Не срабатывает событие OnConnectionLost

Обсуждение возникших проблем, предложений и ошибок SDAC компонентов
Ответить
Zelius
Сообщения: 26
Зарегистрирован: Вт 24 авг 2010 11:26

Не срабатывает событие OnConnectionLost

Сообщение Zelius » Ср 01 июн 2016 10:39

Добрый день!
Почему может не срабатывать OnConnectionLost? Я запускаю приложение, потом отключаю сетевую карту, сыпятся ошибки, но событие не вызывается.
Спасибо

ViktorV
Devart Team
Сообщения: 198
Зарегистрирован: Чт 31 июл 2014 09:52

Re: Не срабатывает событие OnConnectionLost

Сообщение ViktorV » Ср 01 июн 2016 11:57

Чтобы включить обработчик события OnConnectionLost, установите свойство TMSConnection.Options.LocalFailover в True. Обратите внимание, чтобы использовать обработчик OnConnectionLost, вам нужно добавить юнит MemData в секцию USES вашего юнита. Пример использования OnConnectionLost:
procedure TForm1.Button1Click(Sender: TObject);
begin
MSConnection1.Options.LocalFailover := True;
MSConnection1.Open;
end;

procedure TForm1.MSConnection1ConnectionLost(Sender: TObject;
Component: TComponent; ConnLostCause: TConnLostCause;
var RetryMode: TRetryMode);
begin
RetryMode := rmReconnectExecute;
end;
В этом случае, при потере соединения SDAC попытается пересоединиться и перезапустить неудавшуюся операцию.

Zelius
Сообщения: 26
Зарегистрирован: Вт 24 авг 2010 11:26

Re: Не срабатывает событие OnConnectionLost

Сообщение Zelius » Ср 01 июн 2016 12:10

Спасибо. Почему-то в хелпе не написано про Localfailover на странице OnConnectionLost.

ViktorV
Devart Team
Сообщения: 198
Зарегистрирован: Чт 31 июл 2014 09:52

Re: Не срабатывает событие OnConnectionLost

Сообщение ViktorV » Ср 01 июн 2016 14:16

Мы добавим данную информацию в документацию SDAC. Если у Вас возникнут дополнительные вопросы по использованию наших компонентов - обращайтесь.

Ответить