Главная страница
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.024 c
8-66018
mdsns
2003-07-23 07:48
2003.11.20
MediaPlayer


3-65773
TATIANA
2003-10-30 10:16
2003.11.20
Хранимые процедуры


4-66160
SH
2003-09-24 19:39
2003.11.20
Как отловить открытие закрытие CD-ROM а?


1-65889
Oleg_
2003-11-08 00:12
2003.11.20
Jpeg в поток


8-66024
Kremen
2003-07-21 16:50
2003.11.20
Как проиграть мелодию