jo das funktioniert, auch wenn ich nicht verstehe warum.
Leider hilft das ganze bei meinem Problem überhaupt nicht. Die Schleife wird durchgegangen, die Progressbar geht auf fast 100% und die Anzeige im Label geht auf einen Wert der knapp unter StreamIn.Size / StreamIn.Size liegt. Dann dauerts eine Weile und erst DANN wird der darauf folgende Code
Delphi-Quellcode:
Progressbar1.Position:=100;
label2.caption:=inttostr(StreamIn.size) +' / '+ inttostr(Streamin.Size);
StreamIn.Free;
Streamout.free;
ausgeführt. Die Übertragung geht bis zu diesem Zeitpunkt weiter. Also ich kann mir das echt nicht erklären. Nach meinen Verständnis dürfte die for Schleife erst dann weitergehen (i erhöhen; von vorne anfangen), wenn der Buffer übertragen und geschrieben wurde. Demenstprechend müsste alles geschrieben sein, wenn die Statusbar auf 100% ist (den kleinen Rest der nicht in buffersize aufgeht hab ich absichtlich mal weggelassen).
Hat noch jemand eine Idee was man versuchen könnte? Gäbs sonst eine andere Methode ausser Streams, eine Datei stückcheinweise zu übertragen/speichern/kopieren?
danke schonmal