Отправляет email-рассылки с помощью сервиса Sendsay

Программирование. Форум !!!

За 2004-09-18

Re[5]: Поиск директорий. Почему так?

Здравствуйте, Денис.

Здравствуйте, Денис.

В предыдущем письме я небольшую неточность допустил. Правильно так:

FindFirst ('c:\*.*', faDirectory, SR);
if DirectoryExists('c:\'+R.Name) then // делаем что-то, если
это - директория
Насколько быстро оно работает - вопрос.

   Шешунов Вадим 2004-09-18 20:16:49 (#230572)

Re[5]: Поиск директорий. Почему так?

Доброго времени суток, Денис.

Д>>> Теперь находит все, включая файлы... А надо только директории!
ШВ>> Может, коряво будет, но думаю сработает:
ШВ>> {$I-}
ШВ>> FindFirst ('c:\*', faDirectory, SR);
ШВ>> ChDir('c:\'+SR.Name);
ШВ>> if IOResult = 0 then
ШВ>> {$I+}

Д> Спасибо! С некоторыми изменениями работает! Но только по-моему,
Д> функция ChDir работает очень медленно. Может есть еще варианты?
Тогда смотри в сторону API.
Или же востользуйся функцией IsDirectory(), или чем-то в этом роде, я
помню, точно есть.

   "B." 2004-09-18 20:16:38 (#230571)

Re[5]: Поиск директорий. Почему так?

Здравствуйте, Денис.

Вы писали 18 сентября 2004 г., 12:22:30:

Д>>> Теперь находит все, включая файлы... А надо только директории!
ШВ>> Может, коряво будет, но думаю сработает:
ШВ>> {$I-}
ШВ>> FindFirst ('c:\*', faDirectory, SR);
ШВ>> ChDir('c:\'+SR.Name);
ШВ>> if IOResult = 0 then
ШВ>> {$I+}

Д> Спасибо! С некоторыми изменениями работает! Но только по-моему,
Д> функция ChDir работает очень медленно. Может есть еще варианты?

Варинтов - куча.-))))) например так:
FindFirst ('c:\*.*', faDirectory, SR);
if DirectoryExists('c:\windows\'+R.Name) then // делаем что-то, если
это - директория
Насколько быстро оно работает - вопрос.

   Шешунов Вадим 2004-09-18 20:16:16 (#230569)

Re[4]: Поиск директорий. Почему так?

Доброго времени суток, Шешунов.
Вы писали 17 сентября 2004 г., 13:19:57
на тему "Поиск директорий. Почему так?"

Д>> Теперь находит все, включая файлы... А надо только директории!
ШВ> Может, коряво будет, но думаю сработает:
ШВ> {$I-}
ШВ> FindFirst ('c:\*', faDirectory, SR);
ШВ> ChDir('c:\'+SR.Name);
ШВ> if IOResult = 0 then
ШВ> {$I+}

Спасибо! С некоторыми изменениями работает! Но только по-моему,
функция ChDir работает очень медленно. Может есть еще варианты?

   Денис 2004-09-18 13:29:48 (#230435)

Re[4]: Поиск директорий. Почему так?

Доброго времени суток, B..
Вы писали 16 сентября 2004 г., 13:18:25
на тему "Поиск директорий. Почему так?"

Д>> Теперь находит все, включая файлы...

B> Тогда может, так:
B> if FindFirst(c:\*.*, faAnyFile, S) then
B> repeat
B> if not ((S.Attr and faDiractory) = faDirectory) and
B> (S.Name <> '.') and (S.Name <> '..')) then continue;

B> dosome1;
B> dosome2;

B> until (not FindNext(S))
B> FindClose(S);

Все равно находит все!

   Денис 2004-09-18 13:29:05 (#230434)