Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Ускорение работы FileExists [D7, WinXP]


dreamse ©   (2007-10-21 22:09:00) 

Приветствую.

В проекте есть список файлов ( от 10 до 200 ) соответственно при загрузке списке нужно проверять присутствует ли файл на диске ( если не присутствует то нужно не выводить по нему информацию и пр. )

Проверку делаю методом FileExists()

Минус в том что если файлы которые нужно проверить находяться на сетевых дисках ( а иногда даже и на разных машинах в сети ) то это зачастую приводит к большим тормозам при загрузке списка.

Есть ли вариант как либо ускорить функцию проверки наличия файла ? Или может у кого возникнут ещё идеи ?


Игорь Шевченко   (2007-10-22 09:34:00) [1]

Не надо мучиться, надо сеть настроить


Dreamse   (2007-10-21 23:42:00) [2]

> guav ©   (21.10.07 23:21) [4]

К сожалению в разных везде :(

Это список неопределенных программ которые как обычно находяться всегда в разных директориях


Jump   (2007-10-21 23:23:00) [3]

guav ©   (21.10.07 23:21) [4]

+1


guav   (2007-10-21 23:21:00) [4]

Если папок немного или вообще все в одной папке, не будет ли быстрее получить полный список через FindFirstFile / FindNextFile, а затем уже анализировать его ?


vpbar   (2007-10-21 23:15:00) [5]

Гы. Незачто. Я стебался. Если диск сетевой, то он не ИНОГДА а обычно на другой машине.


Dreamse   (2007-10-21 23:02:00) [6]

> vpbar ©   (21.10.07 22:48) [1]

Точно. Поток могу сделать но пока считаю что нет особой необходимости.

А вот момент на счёт подключения шар как диск я согласен полностью. Хорошая идея. Спасибо !


vpbar   (2007-10-21 22:48:00) [7]

Имхо, никак не ускоришь. Если только Riply что-нибудь изобретет :)

>>Минус в том что если файлы которые нужно проверить находяться на сетевых дисках ( а иногда даже и на разных машинах в сети )

На сетевых и ДАЖЕ на разных машинах. Не можно сделать сетевой диск указывающий на шару на тойже машине, просто зачем хз.

Можно проверять из нескольких потоков, это сделает тормоза менее заметными и в случае с сетевыми дисками, может, быстрее работать.


Наверх

Титульная страница Поиск, карта сайта Написать письмо