|
Платные хостинги
Раскрутка сайта
Книги по программированию
Вопрос по FindNext
- Вот такой код:Код if FindFirst(DataDirName+'*.*', faDirectory, sr) = 0 then while FindNext(sr) = 0 do begin if (sr.Name = '.') or (sr.Name = '..') then continue; OrgsList.Add(sr.Name); end;highlightSyntax('delphiiNjFiM','delphi');Мне нужно, чтобы в список заносились только названия папок. Если убрать *.*, то функция не заполняет список вовсе. А при таком раскладе она кидает в список также и файлы, лежащие по указанному пути, хотя указано faDirectory. Какой выход?
- Вырежь себе из этого кода что нужно.Работает 100%.Код procedure ScanDir (Path:string;SearchMask:TStrings;ScanSub:boolean);var SearchRec:TSearchrec; a,i:integer; wstr:string;beginif ScanSub then begin FindFirst(path+'\*.*',faDirectory,SearchRec);{. found} FindNext(SearchRec); {.. found} a:=FindNext(SearchRec); while a=0 do begin if (SearchRec.Attr and faDirectory)>0 then ScanDir(Path+'\'+SearchRec.Name,SearchMask,ScanSub); a:=FindNext(SearchRec); end;{while} FindClose(SearchRec); end;{if}for i:=0 to SearchMask.Count-1 dobegina:=FindFirst(Path+'\'+SearchMask[i],faAnyFile,SearchRec);while a=0 do begin if (SearchRec.Name='.') or (SearchRec.Name='..') then begin a:=FindNext(SearchRec); continue; end;{if}//OPERATION ON FILE a:=FindNext(SearchRec); end;{while}FindClose(SearchRec);end;{for}end; {ScanDir}highlightSyntax('delphiOTAwN2','delphi');
- Ну не совсем. Попробу например вызвать так:Код var SearchMask :TStrings;... SearchMask.Text := '*.*'; ScanDir ('c:',SearchMask,True);...highlightSyntax('delphiODUxYW','delphi');При этом, ты не получишь файлы из первых двух подкаталогов.Дело в том, что в корневом каталоге нет '.' и '..'.
Интернет казино
Онлайн игры
Увеличение члена
Купить DVD
|