hi,
ich verschicke mit dem tserversocket eine datei zum tclientsocket, der dann die datei normalerweise freigeben sollte was er aber nicht tut:
cs_up_up_manager:tclientsocket;
Delphi-Quellcode:
procedure TForm1.ti_up_dl_managerTimer(Sender: TObject);
var
i_temp,i_temp2:integer;
begin
if assigned(fstream) then
begin
if (i_file_size<=fstream.Position) then
begin
cs_up_up_manager.Active:=false;
if not assigned(fstream) then
begin
ti_up_dl_manager.Enabled:=false;
end;
end;
end;
end;
der timer überprüft ob die größe der datei erreicht ist und wenn ja dann wird die verbindung getrennt:
Delphi-Quellcode:
procedure TForm1.cs_up_up_managerDisconnect(Sender: TObject;
Socket: TCustomWinSocket);
begin
fstream:=nil;
fstream.free;
end;
damit müsste der fstream ja freigegeben sein (die ereignisse sind ausgelöst worden vom disconnect) aber ich wenn ich die datei dann öffnen möchte sagt er mir, dass sie von einem anderen prozess verwendet wird. wenn ich das programm dann aus mache kann ich die datei öffnen
warum?