Hi Lord,
Zum ersten Problem :
Die Dateigröße
Das muss geändert werden damit GB amgezeigt werden und nicht Terrabyte:
Delphi-Quellcode:
if (1048576 <= Size) and (Size < 1073741824) then
begin
Result := floattostr((round((Size/1048576)*100))/100)+' MB';
exit;
end;
if Size > 1073741824 then
begin
Result := floattostr((round((Size/1073741824)*100))/100)+' GB';
end;
Das zweite Problem habe ich dann nachher anders gemacht ist zwar nicht so genau wie die vorgesehene Methode
aber funktioniert auch und erfüllt ihren Zweck.
ich lade die DAtei wieder im ganzen runter mit idhttp.get(link,stream);
und benutze da zu die drei Ereignisse
Work, WorkBegin,WorkEnd
Ich habe das dann so wie in diesem Beispiel gelöst:
Beispiel
In WorBegin
Delphi-Quellcode:
if AWorkCountMax > 0 then ProgressBar1.Max := AWorkCountMax
else ProgressBar1.Max := DateigrößeBytes;
In Work
Delphi-Quellcode:
ProgressBar1.Position := AWorkCount;
application.ProcessMessages;
und zu letzt
workEnd
ProgressBar1.Position := 0;
So hoffe ich könnte dir weiterhelfen ansonsten mußt du mal den verfasser gsh fragen.
greetz Lun