for (int i = 0; i < DirList->Count; i++)
{
AnsiString Dir = DirList->Strings ; // Каталог, в котором ведётся поиск
// Цикл поиска всех подкаталогов
// Найденные подкаталоги добавляются в список: DirList->Add (NewDir);
// Цикл поиска всех файлов указанного типа в этом каталоге
// Найденные файлы добавляются в список: FileList->Add (FullName);
}
Помогите,пожалуйста, с поиском exe файлов
Мне требуется программно найти все ехе файлы, которые только существуют на жестком диске и отобразить их на ListBox1. Облазил весь интернет и ничего толком не нашел. Можете написать исходник или приблизительный код проги?
Заранее благодарен!
есть такая вещь как рекурсия. Функция начинает искать с корня диска, если она нашла папку, то вызывает сама себе с путем к этой папке, а если не папка, то проверяешь разрешение файла и если оно равно exe добаляешь в ListBox
Никто не мог бы кинуть код или какой-нибудь исходник с этим поиском.
Буду очень благодарен=))
Код:
Конкретный алгоритм цикла поиска файлов/каталогов можно реализовать через FindFile, FindNext, FindClose - см. хелп, которого у меня сейчас нет под рукой :)
http://sources.codenet.ru/file/665/searchfiles.rar - можно без особых проблем переделать процедуру поиска на си.
можно также использовать API функции: FindFirstFile, FindNextFile, FindClose. а вообще смотри msdn.
вот мой исходник правда на дельфи:
можно также использовать API функции: FindFirstFile, FindNextFile, FindClose. а вообще смотри msdn.
Спасибо, именно их я и имел ввиду.
А вместо TStringList даже лучше можно использовать DynamicArray: нет проблем с созданием/удалением объектов и быстрее работает.
полностью с тобой согласен.