Zitat:
PS: Ich geh mal davon aus, dass das nicht der gesamte Code is. Ansonsten isses ziemlich raetselhaft, wie 10.27 MB ins Editfeld kommen
Habe noch ein editfeld zum check nachträglich eingefügt um euch ein screenshot zu machen und gleich wieder gelöscht..
Zitat:
Was man dagegen tun kann: Total als Int64 deklarieren, dessen Zahlenbereich sollte vorerst mal reichen
Total wird jetz richtig ermittelt...Danke
Nun hab aber ich ein Problem beim FormatBytes wenn Total: int64; (und genauso wenn Totalsize: int64
:
Delphi-Quellcode:
function FormatBytes(const Bytes : cardinal):string;
begin
if Bytes < 1024 then
begin
Result := Format('%s', [IntToStr(Bytes)]) + ' B';
Exit;
end;
if (Bytes >= 1024) and (Bytes < (1024 * 1024)) then
begin
Result := Format('%n', [Bytes / 1024]) + ' KB';
Exit;
end;
if (Bytes >= (1024*1024)) and (Bytes < (1024 * 1024 * 1024)) then
begin
Result := Format('%n', [Bytes / (1024 * 1024)]) + ' MB';
Exit;
end;
if Bytes >= (1024*1024*1024) then
begin
Result := Format('%n', [Bytes / (1024 * 1024 * 1024)]) + ' GB';
Exit;
end;
end;
Formatbytes(Total) ergibt immer noch 10,27MB (obwohl wie gesagt Total ohne format richtig is). Wie komm ich jetzt da raus?!