A függvény a 2GiB -nál nagyobb méretű állományok méretét is helyesen adja vissza (nincs túlcsordulás), mert a visszatérési érték Int64-ben van.
function GetFileSize(AFileName : String) : Int64; var rData : WIN32_FILE_ATTRIBUTE_DATA; iSize : Int64; begin Result := 0; if GetFileAttributesEx(PChar(AFileName), GetFileExInfoStandard, @rData) then begin iSize := rData.nFileSizeHigh; iSize := iSize shl 32; iSize := iSize + rData.nFileSizeLow; Result := iSize; end; end;
Nincsenek megjegyzések:
Megjegyzés küldése