![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Поиск файлов
Ig © (2001-11-17 19:35:00)Мне нужно перебрать все файлы на диске.
Написал процедуру, но работает некорректно. Помогите найти ошибку.
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-18 16:03:00) [1]Да я это упустил
panov (2001-11-18 01:41:00) [2]found:=FindFirst(start+("\"),FaAnyfile,Find);
вместо этого надо
found:=FindFirst(start+( "\*.*"),FaAnyfile,Find);
Это плюс к <Anatoly Podgoretsky © (17.11.01 23:27)>
Anatoly Podgoretsky (2001-11-17 23:27:00) [3]if (find.Attr and faDirectory) <> faDirectory
then ...
else if (find.Name <> ".") and (find.Name <> "..") then ...
FindClose надо выполнять только в том случае, если первый Found = 0