Как мне выздоравливать в этой ситуации?
Сбой сервера, поэтому соединение было аварийно закрыто. Вызовы практически ко всему приводят к исключениям «Сброс соединения по узлу». Кажется, я исправил это, вызвав Disconnect для объекта TIdTCPClient внутри блока исключений, но это приводит к одному последнему исключению с тем же сообщением (которое я поймал во втором блоке try-except).
Это относится к Indy10 и Delphi XE2.
try
if not EcomSocket.Connected then EcomSocket.Connect();
except
on e: Exception do begin
try
EcomSocket.Disconnect();
except
MessageDlg('Connectivity to the server has been lost.', mtError, [mbOK], 0);
end;
end;
end;