Bir klasörün boyutunu öğrenmek
Bir klasördeki dosyaların kaç byte yer kapladığını öğrenmek için
function TForm1.GetDirectorySize(const ADirectory: string): Integer; var Dir: TSearchRec; Ret: integer; Path: string; begin Result := 0; Path := ExtractFilePath(ADirectory); Ret := Sysutils.FindFirst(ADirectory, faAnyFile, Dir); if Ret <> NO_ERROR then exit; try while ret=NO_ERROR do begin inc(Result, Dir.Size); if (Dir.Attr in [faDirectory]) and (Dir.Name[1] <> '.') then Inc(Result, GetDirectorySize(Path + Dir.Name + '\*.*')); Ret := Sysutils.FindNext(Dir); end; finally Sysutils.FindClose(Dir); end; end; procedure TForm1.Button1Click(Sender: TObject); begin Showmessage(intToStr(getdirectorysize('C:\windows'))); end;