Вниз
Скачать: CL | DM;

Поиск каталога или файла   Найти похожие ветки 

 
Slavian ©   (2003-10-14 18:41) [0]

Мастера, напишите мне как найти каталог или файл, если дано имя, на всём диске. У меня не получается проверить все подкаталоги.


 
DVM ©   (2003-10-14 18:48) [1]

FindFirst + FindNext + FindClose + рекурсия


 
Slavian ©   (2003-10-14 18:57) [2]


> DVM © (14.10.03 18:48) [1]

рекурсия, рекурсия, У меня она до бесконечности доходит, напишите мне полный текст процедуры!


 
DVM ©   (2003-10-14 19:01) [3]

В лом мне писать. Вот функция, которая вычисляет размер папки. Суть та же + подумать.

function GetDirectorySize(const Path: string): Int64;
var
FD : TWin32FindData;
FH : THandle;
TempSize: TULargeInteger;
begin
Result := 0;
if Path="" then exit;
if not(DirExists(Path)) then exit;
FH := FindFirstFile( PChar( Path + "*.*" ), FD );
repeat
if (FH<>INVALID_HANDLE_VALUE) and (FD.cFileName <> string(".")) and
(FD.cFileName<>string("..")) then
begin
if (FILE_ATTRIBUTE_DIRECTORY and FD.dwFileAttributes) <> 0 then
Inc(Result, GetDirectorySize(Path + FD.cFileName + "\"))
else
begin
TempSize.LowPart := FD.nFileSizeLow;
TempSize.HighPart := FD.nFileSizeHigh;
Inc(Result, TempSize.QuadPart);
end;
end;
until FindNextFile(FH,FD) = false;
FindClose(FH);
end;


 
clickmaker ©   (2003-10-14 19:03) [4]


> Slavian © (14.10.03 18:57) [2]
>
> > DVM © (14.10.03 18:48) [1]
>
> рекурсия, рекурсия, У меня она до бесконечности доходит,
> напишите мне полный текст процедуры!


Ты лучше свой бесконечный код напиши! А мы уж поглядим, как ему конец приделать...


 
ilka ©   (2003-10-14 19:08) [5]

попробуй поискать сдесь
http://delphibase.endimus.ru/?action=viewfunc&topic=sysparams&id=10314
http://delphibase.endimus.ru/?action=viewtopic&topic=fileops
http://delphibase.endimus.ru/?action=viewtopic&topic=filenames


 
Slavian ©   (2003-10-14 19:14) [6]

всем пасиба, если есть ещё предложения пишите, нет - ну и ладно я уже нашел то что искал!



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

Скачать: CL | DM;



Память: 0.46 MB
Время: 0.017 c
3-89131
Водопад
2003-10-07 20:41
2003.10.27
Базы данных


14-89480
Rad
2003-10-06 18:24
2003.10.27
Кто-нибудь помнит, кто это пел?


1-89277
@Ujin
2003-10-17 00:14
2003.10.27
Что с потоком?


4-89640
WELLiON
2003-08-21 09:25
2003.10.27
Как минимизировать активное приложение?


1-89234
Egor
2003-10-14 17:48
2003.10.27
Delphi && Microsoft Word




   Наверх