使用Win API 获取文件大小(可获取正在使用的文件,包括独占方式打开的文件GetFileSize)

function GetSysFileSizeEx(AbsFileName:string):int64;
var
Handle: Windows.THandle;
FindData: Windows.TWin32FindData;
begin
Handle := Windows.FindFirstFile(PChar(AbsFileName), FindData);
if Handle <> INVALID_HANDLE_VALUE then
begin
Windows.FindClose(Handle);
if (FindData.dwFileAttributes and FILE_ATTRIBUTE_DIRECTORY) = 0 then //文件
begin
Result := INT64(FindData.nFileSizeHigh shl 32)+INT64(FindData.nFileSizeLow);
Exit;
end;
end;
Result := 0;
end;

 

posted on 2011-04-20 21:35  峋山隐修会  阅读(558)  评论(0编辑  收藏  举报

导航