Текущий архив: 2003.11.13;
Скачать: CL | DM;
ВнизПоиск файла на вичестере Найти похожие ветки
← →
Crush (2003-11-02 23:54) [0]Доброе время суток. Как организовать поиск файла на винчестере, так чтобы его искали по всему диску, а именно во всех папках, даже вложенных. Желательно пример(Полный).Заранее спасибо.
← →
wnew (2003-11-02 23:59) [1]http://delphid.dax.ru/docs/view/find2.htm
← →
Slavian (2003-11-03 00:01) [2]
procedure scan_tree (root, ext: string; dF:boolean);
var
test_name: string;
full_name: string;
s: TSearchRec;
begin
root := LowerCase (root);
if root [Length (root)] <> "\" then root := root + "\";
sleep(0);
test_name := root + ext;
if FindFirst (test_name, faAnyFile, s) = 0 then
repeat
with s do
begin
Name := LowerCase (Name);
if df then begin
if (Attr = faDirectory) then
begin
full_name := root + Name;
room.Add (full_name);
end; end
else begin
if (Attr <> faDirectory) then
begin
full_name := root + Name;
if df then
room.Add (full_name)
else rek.Add(full_name)
end;
end;
end;
until FindNext (s) <> 0;
FindClose (s);
test_name := root + "*.*";
if FindFirst (test_name, faAnyFile, s) = 0 then
repeat
with s do
if ((Attr and faDirectory) <> 0) and ((Name <> ".") and (Name <> ".."))
then scan_tree (root + Name,ext,df);
until FindNext (s) <> 0;
FindClose (s);
end;
может несколько переменных необъявил!
← →
wnew (2003-11-03 00:03) [3]http://www.torry.net/vcl/filedrv/search/teasyfilesearch.zip
← →
PVOzerski (2003-11-03 00:03) [4]Традиционный вопрос :^) - традиционный ответ: findfirst+findnext+findclose+рекурсия. Единственный подводный камень - то, что в "." и ".." заходить не надо.
← →
Crush (2003-11-03 00:10) [5]Всем большое спасибо!!!
Страницы: 1 вся ветка
Текущий архив: 2003.11.13;
Скачать: CL | DM;
Память: 0.45 MB
Время: 0.032 c