An Alle, die jetzt manuell mit Clustern rechnen ...
vergesst es!
* "kleine" Dateien liegen im NTFS als Atribut direkt in der MFT und nicht in einem eigenem Cluster
* SparseFiles? Da wo Cluster weggelassen und nicht im dateiSystem liegen.
* NTFS-komprimierte Daeien?
* usw.
http://stackoverflow.com/questions/3...f-file-on-disk
GetCompressedFileSize und den Rest ignorieren.
FindFirst?
Warum gibst du den Speicher/Suchergebnis nicht wieder frei?
Zitat:
Result := F.FindData.nFileSizeLow or (F.FindData.nFileSizeHigh shl 32);
Über 4 GB stimmt das nicht, denn wo werden wohl die zuvielen Bits hingeschoben, in einem 32-Bit-Integer?
Ins NICHTS!
Result := F.FindData.nFileSizeLow or (Int64(F.FindData.nFileSizeHigh) shl 32);