Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2002.01.17;
Скачать: CL | DM;

Вниз

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

 
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]

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



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

Текущий архив: 2002.01.17;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.009 c
3-52466
Turalyon
2001-12-13 10:35
2002.01.17
DBCtrlGrid & CheckBox.


6-52627
KLM
2001-09-28 10:11
2002.01.17
Кодировка почты


3-52475
МАРАТ
2001-12-14 14:56
2002.01.17
Не могу открыть *.GDB


4-52681
Anderius
2001-11-17 21:24
2002.01.17
Как насильно завершить другую программу?


14-52663
Dush
2001-11-16 13:14
2002.01.17
Погода