3 Функции нахождения размера файла:
| Код | function FSize1(FileName: PChar):Cardinal; //Минемальное время поиска. var F: HFILE; begin F:=_lopen(FileName, OF_READ); Result:=_llseek(F ,0 , FILE_END); _lclose(F); end;
function FSize2(FileName: PChar):Cardinal; //Максимальное время поиска. var SearchRec: TSearchRec; begin Result:=0; if FindFirst(ExpandFileName(FileName) ,faAnyfile ,SearchRec )=0 then Result:=SearchRec.Size; FindClose(SearchRec); end;
function FSize3(FileName: PChar):Cardinal; //Чуть больше чем у FSize1. var hFile: Cardinal; begin hFile := CreateFile(FileName,GENERIC_READ,FILE_SHARE_READ,nil, OPEN_EXISTING,FILE_ATTRIBUTE_NORMAL,0); Result:= GetFileSize(hFile, nil); CloseHandle(hFile); end;
|
|