请问如何得到一个目录的大小(M)(1分)

  • 主题发起人 主题发起人 Laird
  • 开始时间 开始时间
L

Laird

Unregistered / Unconfirmed
GUEST, unregistred user!
请问如何得到一个目录的大小(M)
没分了。sorry
 

uses ShellApi
function GetDirectorySize(Path: String): Integer;
//eg. Path = 'c:/temp/'
var
SR: TSearchRec;
begin
Result := 0;
if FindFirst(Path + '*.*', faAnyFile, SR) = 0 then
begin
if (sr.Name <> '.') and (sr.Name <> '..') and (sr.Attr = faDirectory) then
Result := Result + GetDirectorySize(Path+Sr.Name+'/')
else
Result := Result + Sr.Size;
while FindNext(sr) = 0 do
if (sr.Name <> '.') and (sr.Name <> '..') and (sr.Attr = faDirectory) then
Result := Result + GetdirectorySize(Path+Sr.Name+'/')
else
Result := Result + Sr.Size;
FindClose(sr);
end;
end;
 
非常thanks
不过只能是2G.(以经满足我的要求了。光盘容量只有600M)
 
接受答案了.
 
后退
顶部