Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2005.02.13;
Скачать: CL | DM;

Вниз

FTP&indy Проблема при уничтожения FTPServer - a   Найти похожие ветки 

 
Vyacheslav ©   (2004-12-03 14:10) [0]

В вобшем такая проблема Мастера. Вызываем Destroy.
в строке (FreeAndNil(FIdFTPServer1)) возникает ощибка EIdClosedSocket with Message "Disconnected".. Эта ощибка возникает только если в момент уничтожения есть активный клиент..
Если клиент закрыл ссесию сам то Destroy проходит нормалньо

destructor TFTPServerThread.Destroy;
var f:TList;
   i:integer;
begin
 f := FIdFTPServer1.Threads.LockList;
 for i:=f.Count-1 downto 0 do begin
   IdFTPServer1Disconnect(TIdPeerThread(f[i]));
 end;
 try
   FreeAndNil(FIdFTPServer1); // Ощибка Здесь
 except
 end;
 inherited;
end;

procedure TFTPServerThread.IdFTPServer1Disconnect(AThread: TIdPeerThread);
var ActClient : TBotFTPUser;
begin
 if assigned(TBotFTPUser(AThread.Data)) then begin
   ActClient := TBotFTPUser(AThread.Data);
   try
     FIdFTPServer1.Threads.LockList.Remove(ActClient);
   finally
     FIdFTPServer1.Threads.UnlockList;
   end;
   ActClient.Free;
   AThread.Data := nil;
 end;
end;

//на ето можете не смотреть...так для обшего понимания
type TBotFTPUser=class
 filename:String;
 uploading:Boolean;
end;


 
Jel ©   (2004-12-04 15:06) [1]

Возможно не успевает отработать Disconnect?



Страницы: 1 вся ветка

Текущий архив: 2005.02.13;
Скачать: CL | DM;

Наверх




Память: 0.46 MB
Время: 0.028 c
1-1106812418
bon
2005-01-27 10:53
2005.02.13
компонент Outlook bar для Делфи7


4-1104081422
Inch
2004-12-26 20:17
2005.02.13
Внедрение кода в чужой процесс


1-1107235159
Naum
2005-02-01 08:19
2005.02.13
Вопрос по поводу default


6-1101878057
VAV
2004-12-01 08:14
2005.02.13
Скачивание данных и инета


4-1104144220
Tack
2004-12-27 13:43
2005.02.13
Отловить моменты начала и конца прокрутки TRichEdit