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


Автор: wadas 13.2.2011, 23:00
общая схема:
------
программа соединяется с FTP
Код

FIdFTP.Connect(True,7500);


но в ходе работы бывает связь с FTP зависает. и все встает
Хочу перед началом работы соединения поставить таймер с интервалом например 10000 мс. если по истечении этого
интервала соединения не произойдет или не сработает disconnect в течении 7500 мс, то соединение рвется по таймеру.
------
как сделать разрыв связи по таймеру?

Код

TMyTimer = class(TTimer)
public
constructor Create(AOwner: TComponent); override;
procedure Tick(Sender: TObject);
end;

constructor TMyTimer.Create(AOwner: TComponent);
begin
inherited Create(AOwner);
Enabled:=false;
Interval:=10000;
end;
...
TMyThread.Execute
begin
fd_Timer:=TMyTimer.Create(nil);
fd_Timer.Enabled:=true;

FIdFTP.Connect(True,7500);

// и как записать, что прошло время по таймеру и сделать разрыв с сервером или, не подключились, порвать запрос к нему??
end;
... 

Автор: MetalFan 14.2.2011, 15:08
wadas, а разве нет стандартных св-в ConnectTimeout Read/WriteTimout? Зачем колесо изобретать?

Автор: wadas 15.2.2011, 21:16
Точно использовал ConnectTimeout. Спасибо, что напомнили.

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