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


Автор: akimovaleks 22.8.2010, 20:16
подскажите как сделать проверку на соеденения
примерно так 
если 
IdFTP1.Connec // произошел
то вылоним код
иначи 
выполним другой код

Автор: cat512 22.8.2010, 21:43
Ты уже написал, только надо проинициализировать свойства user password, host, port соответствующими значениями

Автор: Matematik 23.8.2010, 16:42
Indy в случае ошибки кидает исключение, надо только его поймать и обработать
Код

  try
    idftp2.Host := 'my.router2';
    idftp2.Username := 'anonymous';
    idftp2.Password := 'lalala';
    idftp2.Connect(True, 10000);
  except
    on E: EIdProtocolReplyError do
      ShowMessage(Format('сервер послал нах - код %d сообщение %s', [E.ReplyErrorCode,E.Message]));
    on E: EIdException do
      ShowMessage(Format('какая-то еще ошибка %s %s', [E.ClassName,E.Message]));
    else
      raise
  end;

EIdProtocolReplyError - ошибка протокола, например - не принимает логин\пароль
EIdException - любая другая ошибка indy, например - "сервер не найден"
эти и другие исключения описаны в IdException.pas

Автор: Akella 28.8.2010, 12:42
мне кажется, что сначала присвоить адрес сервера, потом сделать Connect, и если всё в норме, то уже передавать присваивать свойствам компоненты, логин и пароль и выполнять login или logon, точно не помню 

Автор: fishick 31.8.2010, 23:10
Порядок такой:
IdFTP1.Host:='';
IdFTP1.Port:=21;
IdFTP1.username:='';
IdFTP1.password:='';
idftp1.Connect;

можно поместить в блок try...exept для обработки исключений

Проверка соединения выполняется так:

If IdFTP1.Connected then далее код если подключено

Автор: Akella 4.9.2010, 17:55
повторяю, что для IdFTP1.Connected не нужны логин и пароль

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