Форум: "WinAPI";
Поиск по всему сайту: delphimaster.net;
Текущий архив: 2002.01.17;
Скачать: [xml.tar.bz2];




Вниз

Поиск файлов 


Ig   (2001-11-17 19:35) [0]

Мне нужно перебрать все файлы на диске.
Написал процедуру, но работает некорректно. Помогите найти ошибку.

Procedure FindFiles(start:string);
var Find:Tsearchrec;found:integer;
begin
found:=FindFirst(start+("\"),FaAnyfile,Find);
while found=0 do begin
if (find.Attr<>faDirectory)and(find.Name[1]<>".") then
RichEdit1.Lines.Add(find.name)
else if find.Name[1]<>"." then findFiles(start+"\"+find.name);
found:=findnext(find);
end;
findclose(find);
end;



Anatoly Podgoretsky   (2001-11-17 23:27) [1]

if (find.Attr and faDirectory) <> faDirectory
then ...
else if (find.Name <> ".") and (find.Name <> "..") then ...

FindClose надо выполнять только в том случае, если первый Found = 0



panov   (2001-11-18 01:41) [2]

found:=FindFirst(start+("\"),FaAnyfile,Find);
вместо этого надо
found:=FindFirst(start+( "\*.*"),FaAnyfile,Find);
Это плюс к <Anatoly Podgoretsky © (17.11.01 23:27)>



Anatoly Podgoretsky   (2001-11-18 16:03) [3]

Да я это упустил




Форум: "WinAPI";
Поиск по всему сайту: delphimaster.net;
Текущий архив: 2002.01.17;
Скачать: [xml.tar.bz2];




Наверх





Память: 0.71 MB
Время: 0.033 c
1-52608           Марина                2001-12-29 08:22  2002.01.17  
HiTech


1-52583           Cyber                 2001-12-25 21:44  2002.01.17  
Люди, профы, помогите. Help me!


1-52546           VitHouse              2001-12-27 10:25  2002.01.17  
Не, ну вообще прикл...


6-52633           maxi                  2001-10-23 11:45  2002.01.17  
Как передать серверу интерфейс клиента


1-52587           Igor_thief            2001-12-28 15:49  2002.01.17  
WallPapers