Delphi-PRAXiS
Seite 2 von 2     12   

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   GUI-Design mit VCL / FireMonkey / Common Controls (https://www.delphipraxis.net/18-gui-design-mit-vcl-firemonkey-common-controls/)
-   -   Delphi Kopierstatus in eigener ProgressBar? (https://www.delphipraxis.net/28541-kopierstatus-eigener-progressbar.html)

nailor 26. Aug 2004 14:27

Re: Kopierstatus in eigener ProgressBar?
 
ich hatte das problem auch. ich bin zuerst einmal mit findfirst/next über die daten gebrettert, habe die gesamtgröße bestimmt.

dann habe ich beim lesen alle x byte und immer am dateiende (damit auch der "rest" berücksichtigt wird) ne message gefeuert (da es auf zwei threads verteilt war), wieviel ich gelesen habe. das habe ich dann in der routine, die die messages empfangen hat aufsummiert und hatte somit gesamtgröße und bearbeitete größe --> prozentsatz.

da nicode ja anscheinen was hat, mit dem man laufend unterrichtet wird, wie weit man ist, sollte das auch durchführbar sein.

Delphi-Quellcode:
//teil 1:
Read:= InStream.Read(Buffer,Sizeof(Buffer));
Inc(Result,Read);
DoSomething(Buffer,Buffer,Read);
OutStream.Write(Buffer,Read);
CryptedBytes(Read);


// da wo kopiert wird:
procedure TCryptoThread.NewProgress(count: longint);
var
  old: integer;
begin
  inc(actbyte, count);
  old := progress;
  progress := floor(1000 * actbyte / maxbyte);

  // only fire message when something changed
  if old <> progress then
    SendMessage(Form2.Handle, succ(WM_USER), 0, progress);
end;

// da wo angezeigt wird
procedure TForm2.NewProgress(var msg: TMessage);
begin
  ProgressBar2.Position := msg.LParam;
end;

Luckie 26. Aug 2004 14:30

Re: Kopierstatus in eigener ProgressBar?
 
Zitat:

Zitat von NicoDE
Zitat:

Zitat von Whissi
Geht das mit euren Code-Schnipseln?

Nein.

Zitat:

Zitat von Whissi
Da diese nach ersten Überfliegen für mich nur auf ein File ausgelegt sind...

So ist es.

Aber es hindert dich niemand daran in einer Schleife alle Dateien durchzugehen und jeweils die Prozedur aufzurufen. ;)

Whistler 26. Aug 2004 21:05

Re: Kopierstatus in eigener ProgressBar?
 
Doch nicht so einfach...
Ich kann zwar nun alle Dateien incl. SubFolder und deren Dateien in ein TList Objekt ausgeben, aber dann? Imho müsste ich jeden Subordner erstellen usw. ...

Whistler 27. Aug 2004 01:59

Re: Kopierstatus in eigener ProgressBar?
 
Vielen Dank für alle Beiträge.
Ich habe nun eine Prozedur hinbekommen die Ordner kopiert (incl. Unterverzeichnisse und Dateien) und mir den Fortschritt der aktuellen Datei und des gesamt Vorgangs ausgibt!

Danke ;)

Matze 17. Sep 2004 13:03

Re: Kopierstatus in eigener ProgressBar?
 
:hi: Whissi, könntest du hier evtl. für andere auch deine Lösund posten?

Das wäre nett von dir. :)


Alle Zeitangaben in WEZ +1. Es ist jetzt 10:48 Uhr.
Seite 2 von 2     12   

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