Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2003.11.20;
Скачать: CL | DM;

Вниз

Как узнать размер папки?   Найти похожие ветки 

 
UNick   (2003-11-10 15:46) [0]

Как узнать размер папки? Спасибо.


 
Ломброзо ©   (2003-11-10 15:48) [1]

сложить?


 
TUser ©   (2003-11-10 16:36) [2]

Найти все файлы и проссумровать из размеры.


 
Zew ©   (2003-11-10 18:39) [3]

Вот так попробуй
uses FileCtrl;

function DirSize(Dir: string): integer;
var
SearchRec: TSearchRec;
Separator: string;
DirBytes: integer;
begin
Result:=-1;
if Copy(Dir,Length(Dir),1)="\" then
Separator := ""
else
Separator := "\";
if FindFirst(Dir+Separator+"*.*",faAnyFile,SearchRec) = 0 then
begin
if FileExists(Dir+Separator+SearchRec.name) then
DirBytes := DirBytes + SearchRec.Size
else
if DirectoryExists(Dir+Separator+SearchRec.name) then
begin
if (SearchRec.name<>".") and (SearchRec.name<>"..") then
DirSize(Dir+Separator+SearchRec.name);
end;
while FindNext(SearchRec) = 0 do
begin
if FileExists(Dir+Separator+SearchRec.name) then
DirBytes := DirBytes + SearchRec.Size
else
if DirectoryExists(Dir+Separator+SearchRec.name) then
begin
if (SearchRec.name<>".") and (SearchRec.name<>"..") then
DirSize(Dir+Separator+SearchRec.name);
end;
end;
end;
FindClose(SearchRec);
Result:=DirBytes;
end;

procedure TForm1.Button1Click(Sender: TObject);
var
DirBytes: integer;
begin
DirBytes := DirSize("c:\windows");
Form1.Label1.Caption := IntToStr(DirBytes);
end;



Страницы: 1 вся ветка

Текущий архив: 2003.11.20;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.017 c
6-66050
Виноградов Алексей
2003-09-25 20:54
2003.11.20
Как узнать, от какого клиента пришли данные в TServerSocket ? (+)


1-65819
dimm
2003-11-10 12:26
2003.11.20
Как String преобразовать в Pchar?


3-65734
ERDEN
2003-11-01 08:33
2003.11.20
BCD Error


3-65759
Raduga
2003-10-31 09:11
2003.11.20
Тормоза при выборке из базы MSSql Server


1-65952
STANT
2003-11-11 00:48
2003.11.20
Принудительно обновить StatusBar