Форум: "Основная";
Текущий архив: 2007.07.01;
Скачать: [xml.tar.bz2];
ВнизПоиск файлов FindNext, FindFirst Найти похожие ветки
← →
Novice (2007-05-03 07:54) [0]При использовании функций для поиска файлов столкнулся с такой проблемой. Есть процедура ScanForFiles(Path : string), которая является методом некоторого класса. И вот в чем соль - если переменную MySearchRecord : TSearchRec объявить как локальную переменную процедуры ScanForFiles, тогда вся фукнция работает без проблем - сканирует каталоги любой степени вложенности и все такое. Но стоит переменную MySearchRecord : TSearchRec сделать полем класса в секции Private, как рекурсивный поиск отказывается работать - выглядит это следующим образом - поиск доходит до первого каталога, если в нем есть другие каталоги, то опять входит в первый каталог и так до конца, затем выходит обратно, и вся функция завершается, несмотря на наличие кучи других каталогов.
В чем может быть дело?
← →
MBo © (2007-05-03 08:28) [1]Ну так не делай MySearchRecord полем класса!
Она должна быть локальной переменной рекурсивной процедуры, иначе поиск не может продолжиться после возврата из рекурсии.
← →
Novice (2007-05-03 09:01) [2]Ну, что полем класса эту переменную делать ненужно, это я уже понял.
А за объяснение
>>Она должна быть локальной переменной рекурсивной процедуры,
>>иначе поиск не может продолжиться после возврата из рекурсии.
очень благодарен.
Страницы: 1 вся ветка
Форум: "Основная";
Текущий архив: 2007.07.01;
Скачать: [xml.tar.bz2];
Память: 0.44 MB
Время: 0.004 c