Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Netzwerke (https://www.delphipraxis.net/14-netzwerke/)
-   -   Delphi prozentanzeige beim dl via filestream (https://www.delphipraxis.net/75782-prozentanzeige-beim-dl-via-filestream.html)

gandime 24. Aug 2006 22:13


prozentanzeige beim dl via filestream
 
hi,
ich möchte eine prozentanzeige oder/und ein eine anzeige wie lange es noch dauert
hier is mein bisheriger code ohne % anzeige usw:

server:
Delphi-Quellcode:
var
  FStream:tfilestream;
  ...


  begin
    FStream := TFileStream.Create('datei_s', fmCreate);
    try
      AContext.connection.IOHandler.ReadStream(fstream);
    finally
    end;
    FreeAndNil(FStream);
  end
client:
Delphi-Quellcode:
var
  FStream:tfilestream;
  ...


  begin
  FStream := TFileStream.Create('datei_c', fmOpenRead);
  try
    IdTCPClient_filemanager.IOHandler.Write(Fstream,0,true);
  finally
    IdTCPClient_filemanager.Disconnect;
  end;
  FreeAndNil(FStream);
ps: die anzeige soll beim server sein aber bei beiden wäre es natürlich besser


mfg gandime

edit:
ich hatte mir schon überlegt beim server die größe der datei auszulesen aber da bekomme ich immer die größe die die datei hat wenn sie fertig geladen is

Vjay 24. Aug 2006 23:32

Re: prozentanzeige beim dl via filestream
 
Nun dann schick doch einfach die Filestream.size vorweg ;)

Sko 24. Aug 2006 23:42

Re: prozentanzeige beim dl via filestream
 
Huhu, ManuMF hat da mal was passendes gebaut *klick*

gandime 25. Aug 2006 12:59

Re: prozentanzeige beim dl via filestream
 
Zitat:

Zitat von Vjay
Nun dann schick doch einfach die Filestream.size vorweg ;)

ja was bringt mir das ich will ja nicht wissen wie groß das is sondern wievel schon geschickt wurde


Zitat:

Zitat von Sko
Huhu, ManuMF hat da mal was passendes gebaut *klick*

das is schon eine bessere hilfe blos wie bekomme ich das mit dem server hin hier is das ja mit dem clienten gemacht

gandime 25. Aug 2006 13:13

Re: prozentanzeige beim dl via filestream
 
so hab mir wieder selber geholfen

Delphi-Quellcode:
procedure Tfrm_file.Timer1Timer(Sender: TObject);
var
  i_size,i_pos:integer;
begin
  i_size:=fstream.Size;
  i_pos:=fstream.Position;
  edit1.text:=inttostr(round((i_pos/i_size)*100));
end;
aber trotzdem thx


Alle Zeitangaben in WEZ +1. Es ist jetzt 13:32 Uhr.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz