Hey
DP,
ich kriege es einfach nicht hin große Dateien mit den
Indy-Komponenten zu versenden!
Mit kleineren Dateien funktioniert es wunderbar, aber zB. mit einer 700MB großen Datei zum Beispiel nicht mehr.
Hier mal mein Code der die Datei versenden soll (wirklich nur der Kern!):
Delphi-Quellcode:
Procedure TFrmRA.ServerExecute(AThread: TIdPeerThread);
var
OpenFile: string;
LoadFile: TStream;
begin
[...]
LoadFile := TFileStream.Create(OpenFile, fmOpenRead or fmShareDenyWrite);
try
AThread.Connection.OpenWriteBuffer;
AThread.Connection.WriteStream(LoadFile, FALSE, TRUE);
AThread.Connection.CloseWriteBuffer;
finally
LoadFile.Free;
end;
end;
Der Client:
Delphi-Quellcode:
procedure TFrmRAC.BtnDownloadClick(Sender: TObject);
var
LoadFile: TStream;
begin
[...]
try
LoadFile := TFileStream.Create(EdSave.Text, fmCreate);
except
ShowMessage('Zieldatei kann nicht erstellt werden!');
Exit;
end;
try
try
Client.ReadStream(LoadFile, Client.ReadInteger);
ShowMessage('Vorgang erfolgreich ausgeführt!');
except
ShowMessage('Unbekannter Fehler');
end;
finally
LoadFile.Free;
end;
end;
Der ReadTimeout liegt bei 2 Sekunden, aber wahrscheinlich liegt es an etwas völlig anderem, was ich nicht verstanden habe =/
Sieht jemand meinen Fehler?
Schonmal danke für euere Hilfe!
greetZ 64Jabor