Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Delphi: Сети > Обработка ошибки EIdSocketError


Автор: artmaestro 30.6.2012, 21:47
Здравствуйте.

подскажите пожалуйста как перехватить  EIdSocketError


Код

procedure TForm4.Button1Click(Sender: TObject);
begin
Timer1.Enabled:=False;
end;

procedure TForm4.FormCreate(Sender: TObject);
begin
IdIcmpClient1.Host:='ya.ru';
  IdIcmpClient1.ReceiveTimeout:=500;
end;

procedure TForm4.IdIcmpClient1Reply(ASender: TComponent;
  const AReplyStatus: TReplyStatus);
  var
    ping :integer;
begin
 try
ping:=AReplyStatus.MsRoundTripTime;
 Memo1.Lines.Add('Ping: '+inttostr(AReplyStatus.MsRoundTripTime));

 except
 on EIdSocketError do begin
   Memo1.Lines.Add('error');
 end;
end;

end;

procedure TForm4.Timer1Timer(Sender: TObject);
begin
  IdIcmpClient1.Ping;

end;

end.


кинул в uses IdStack

Пинговал локальный компьютер ( соединение через wi-fi) возникает другая проблема, при отключении адаптера wi-fi программа выводить пинг 499-500, но при его включении (во время работы программы) вызывается данная ошибка

http://s2.ipicture.ru/


Автор: CodeMonkey 1.7.2012, 03:23
Подсказка: окно "Debugger Exception Notification" показывает НЕ твоя программа.

Обрати внимание на выделенные жирным слова.

Автор: MetalFan 2.7.2012, 11:40
+ чтобы НЕ твоя программа не показывала это окно, поставь в нем галку Ignore this exception type

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)