Bezdepbonusu7Программирование: статьи и ответы

Вопрос

Как найти файл на всех дисках

Автор вопроса: noobОтветов: 2

эй, как я могу найти файл на жестком диске,

Например, я хочу найти файл settings.ini на своем компьютере.

filesearchdelphi

Ответы

Ответ 1 · рейтинг 4 · gabr

Сначала вы должны получить список допустимых дисков. Это было обсуждалось ранее в StackOverflow.

Вы должны вызвать FindFirst/FindNext/FindClose в корневой папке каждого диска. Получить список файлов и каталогов. Проверьте список файлов. Повторите это для каждого каталога. Пока у вас не закончатся каталоги. Найдите "[delphi] findfirst" в StackOverflow, чтобы найти дополнительную информацию.

Ответ 2 · otherchirps

Просто добавьте к совету FindFirst/FindNext:

Будьте осторожны с "." и ".." имена каталогов, которые возвращаются. В противном случае у вас никогда не закончатся предметы для ходьбы.

Также следите за тем, чтобы ничего не возвращалось в результате WIN32_FIND_DATA с установленным флагом FILE_ATTRIBUTE_REPARSE_POINT. Это, вероятно, будет символическая ссылка, и то, куда она ведет, также может дать вам бесконечную прогулку. Пример можно увидеть на странице Старая новая вещь.

Перевод вопроса и ответов сообщества Stack Overflow, лицензия CC BY-SA. Оригинал на Stack Overflow.

Похожие материалы