Einzelnen Beitrag anzeigen

64Jabor

Registriert seit: 9. Jan 2008
158 Beiträge
 
Delphi 7 Personal
 
#1

Große Dateien senden (Indy 9)

  Alt 1. Mai 2009, 12:39
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
Sebastian
  Mit Zitat antworten Zitat