информационная безопасность
без паники и всерьез
 подробно о проекте
Сетевые кракеры и правда о деле ЛевинаЗа кого нас держат?
BugTraq.Ru
Русский BugTraq
 Анализ криптографических сетевых... 
 Модель надежности двухузлового... 
 Специальные марковские модели надежности... 
 Модульный ботнет от русских хакеров 
 Торвальдс и вайбтестеры 
 Атака на GitHub 
главная обзор RSN блог библиотека закон бред форум dnet о проекте
bugtraq.ru / форум / programming
Имя Пароль
ФОРУМ
если вы видите этот текст, отключите в настройках форума использование JavaScript
регистрация





Легенда:
  новое сообщение
  закрытая нитка
  новое сообщение
  в закрытой нитке
  старое сообщение
  • Напоминаю, что масса вопросов по функционированию форума снимается после прочтения его описания.
  • Новичкам также крайне полезно ознакомиться с данным документом.
[Pascal] Замучился. Может у кого есть готовое решение? 20.08.01 17:57  
Автор: DamNet <Denis Amelin> Статус: Elderman
<"чистая" ссылка>
Прохождение всех подкаталогов, заданного каталога. Дайте хотябы алгоритм!!! А то я ужо мягко говоря затрахался.
[Pascal] Замучился. Может у кого есть готовое решение? 23.08.01 13:36  
Автор: Chingachguk Статус: Незарегистрированный пользователь
<"чистая" ссылка>
> Прохождение всех подкаталогов, заданного каталога. Дайте
> хотябы алгоритм!!! А то я ужо мягко говоря затрахался.

Могу выслать свой исходник для DOS(Pascal 7.0) (вставки на asm) - там с интерфейсом хождение по текущему диску с заходом в подкаталоги - или просто поиск файлов в подкаталогах на чистом asm.
Не требует больших буферов. НЕ рекурсивна.

Писать: vzubko@chat.ru
[Pascal] Будь любезен... 23.08.01 14:41  
Автор: DamNet <Denis Amelin> Статус: Elderman
<"чистая" ссылка>
[Pascal] Замучился. Может у кого есть готовое решение? 21.08.01 03:47  
Автор: Бяша <Biasha> Статус: Member
<"чистая" ссылка>
> Прохождение всех подкаталогов, заданного каталога. Дайте
> хотябы алгоритм!!! А то я ужо мягко говоря затрахался.

1. Поиск в глубину: берёшь каталог, в цикле для каждого его подкаталога (если таких нет, то что-то делаешь) вызываешь эту же процедуру.

2. Поиск в ширину (это когда нужно всех одновременно получить, или просто памяти дофига): берёшь каталог, динамически создаёшь массив с именами его подкаталогов, после этого в цикле создаёшь такой же массив, для каждой записи в массивах, полученных на прошлом шагу.
[Pascal] Замучился. Может у кого есть готовое решение? 21.08.01 11:05  
Автор: cyril_ Статус: Незарегистрированный пользователь
<"чистая" ссылка>
// Выдрал кусок из проги под win32 console
// Можешь доработать под себя, в принципе работает
// сканирует только один логический диск
// недостаток, так как проверки на количество вызовов, то стек может
// переполнится
// Думаю алгоритм обхода должен быть понятен

Const
FileMask = '*';

procedure RecurseSearch(Location : string);
var
F : TSearchRec;
begin
if FindFirst(Location+FileMask, faAnyFile, F) <> 0 then exit;
repeat
if (F.Name = '.') OR (F.Name = '..') then continue;
if (FileGetAttr(Location+F.Name) AND faDirectory) > 0 then RecurseSearch(Location+F.Name+'\')
else
if (UpperCase(F.Name) = UpperCase('file.txt')) then
Добавим куда-либо путь(Location+F.Name) к найденному файлу

until FindNext(F) <> 0;
FindClose(F);
end;
1





Рейтинг@Mail.ru


  Copyright © 2001-2026 Dmitry Leonov   Page build time: 0 s   Design: Vadim Derkach