Einzelnen Beitrag anzeigen

Benutzerbild von Union
Union

Registriert seit: 18. Mär 2004
Ort: Luxembourg
3.487 Beiträge
 
Delphi 7 Enterprise
 
#5

Re: nur Teile einer Datei per FTP vom Server laden

  Alt 17. Aug 2006, 12:55
Du musst zunächst die Puffergröße für Deinen Test verringern, z.B.:
IDFtp1.RecvBufferSize := 128; Dann musst Du einen OnWork-Handler zuweisen, in dem Du den Transfer nach einer bestimmten Anzahl von Bytes abbrichst:
Delphi-Quellcode:
procedure TForm1.IdFTP1Work(Sender: TObject; AWorkMode: TWorkMode;
  const AWorkCount: Integer);
begin
   if AWorkCount > 64 then
      IdFTP1.Abort;
end;
Dann kannst Du den Inhalt prüfen, die Puffergröße wieder erhöhen und den OnWork-Handler deaktivieren bzw. anders steuern und den echten Transfer starten. Du kannst die Daten auch in einen Memory-Stream schreiben, so unterbleiben die Festplattenzugriffe.
Ibi fas ubi proxima merces
sudo /Developer/Library/uninstall-devtools --mode=all
  Mit Zitat antworten Zitat