Форум: "Сети";
Текущий архив: 2005.02.13;
Скачать: [xml.tar.bz2];
Вниз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;
Скачать: [xml.tar.bz2];
Память: 0.44 MB
Время: 0.035 c