Показать сообщение отдельно
  #1  
Старый 19.09.2017, 09:00
DIEsel DIEsel вне форума
Прохожий
 
Регистрация: 09.09.2016
Сообщения: 14
Версия Delphi: Delphi 7
Репутация: 10
По умолчанию IdSMTP не ловит ConnectTimeOut

При наличии интернета компонент работает как надо: подключается, отправляет, но если интернет отсутствует, то какое бы значение я не выставил в ConnectTimeOut, подключение висит секунд 10-15 и выдаёт ошибку подключения. А мне не нужно ждать столько времени. Как быть, где косяк?

Код:
// Соединяемся с почтовым сервером
procedure TfMain.SMTPConnect;
begin
// ShowMessage('Подключаемся...');
try
  IdSMTP1.ConnectTimeout:=1000;
  if not IdSMTP1.Connected then
  IdSMTP1.Connect;
  LPostStatus.Caption:='Соединение с почтовым сервером установлено';
  SMTPOK:=true;
  // ShowMessage('Подключились!');
  except
  on E:EidException do
    begin
    ShowMessage('Не удалось соединиться с почтовым сервером! Отправка писем невозможна!');
    LPostStatus.Caption:='Соединение с почтовым сервером не установлено!';
    SMTPOK:=false;
    // ShowMessage('Не подключились :(');
    end;
  end;
end;
Ответить с цитированием