![]() |
|
![]() ![]() ![]() |
|
julianusti |
|
|||
Новичок Профиль Группа: Участник Сообщений: 10 Регистрация: 23.8.2007 Где: Украина, Львов Репутация: нет Всего: нет |
Создания интерфейса для поиска файлов на локальной машине за заданым именем, форматом файла...
vector<string> Find(string fileName ) как реализовать ?...помогите пожалуйста. |
|||
|
||||
SenkraD |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 933 Регистрация: 3.2.2006 Где: Украина::Киев Репутация: 4 Всего: 23 |
julianusti, а что поиском пользоватся не умеем - тема частая (переодически).
Вот тебе пример с MSDN (WinAPI):
А если конкретно по твоей задаче, то: 1. Определи количество дисков на локальной машине и их корневые папки (_getdrive, _chdrive, _getdcwd) 2. Перепиши функцию так, чтобы она работала рекурсивно. (Лучше не возвращай vector, а передавай его как входной параметр, по ссылке) 3. Вызови модифицированную функу для все дисков (Будь внимателен с "флопом" и CD/DVD - нужно проверять есть ли в них носители, иначе будет горе) P.S. В MFC есть обёртка для поиска файлов - CFileFind P.S.P.S. Появятся новые вопросы - спрашивай, а первая строчка - это совет, на будущее Это сообщение отредактировал(а) SenkraD - 29.8.2007, 07:46 |
|||
|
||||
julianusti |
|
|||
Новичок Профиль Группа: Участник Сообщений: 10 Регистрация: 23.8.2007 Где: Украина, Львов Репутация: нет Всего: нет |
Спасибо большое за подсказку....буду работать. Делав том что я в мсдн был и этот пример уже видел и даже запускать пробывал
![]() Еще раз спасибо. vector<string> Find( string fileName ) Performs search for specified in constructor drive for files named fileName. Returns vector of found files. Each vector element – file name with fully specified path. Note: method blocks until search is complete. Вот конкретно условия. Это сообщение отредактировал(а) julianusti - 29.8.2007, 07:59 |
|||
|
||||
zkv |
|
|||
![]() ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 2133 Регистрация: 23.7.2006 Где: Санкт-Петербург Репутация: 16 Всего: 92 |
офигеть чему учат - вектор строк по значению передавать ![]() тебе все показали
так и функций в программе может быть больше одной (модифицированное высказывание bsa ![]() только в них хотя бы по ссылке вектор передавай Это сообщение отредактировал(а) zkv - 29.8.2007, 08:20 |
|||
|
||||
SenkraD |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 933 Регистрация: 3.2.2006 Где: Украина::Киев Репутация: 4 Всего: 23 |
julianusti, держи (было время - поигрался), но тебе это лучше распаралелить уж очень лолго по всей машине искать будет
zkv, согласен в том, что нужно по ссылке передавать
Remarks: - Даная реализация не может искать по маске!!! - Местами не лучшая реализация (мне так показалось) - можно было б реализовать на WinAPI и не использовать CString - получить количество дисков тоже можно было б через API, а не через CRT - Нет проверки на наличие носителя в каком-либо дисководе - Не помешало б распарелить (один диск - один поток) P.S. VC++ 2003 - Unicode отключён - работаем в ANSI Это сообщение отредактировал(а) SenkraD - 29.8.2007, 10:42 |
|||
|
||||
julianusti |
|
|||
Новичок Профиль Группа: Участник Сообщений: 10 Регистрация: 23.8.2007 Где: Украина, Львов Репутация: нет Всего: нет |
Спасибо большое, буду розбиратся... впринципе я бы использывал бы мсдн"овский пример, но таке задание...а я таким вообще не занимался...я пока что чайник, но стремительно учусь...еще раз благодарю за помощь!
|
|||
|
||||
NiJazz |
|
|||
![]() Jazz coder ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 2286 Регистрация: 10.8.2003 Где: Москва Репутация: 2 Всего: 23 |
Я чего-то не понимаю, или всё-таки здесь лучше использовать list<>, а не vector<>?
Добавлено через 13 минут и 54 секунды Ну или хотя бы сделать грамотный vector<>::reserve. |
|||
|
||||
julianusti |
|
|||
Новичок Профиль Группа: Участник Сообщений: 10 Регистрация: 23.8.2007 Где: Украина, Львов Репутация: нет Всего: нет |
SenkraD,
Привет, еще раз спасибо за пример....я вот нидавно содился...и что то мне не вышло этот проект запустить....ты бы не мог мне на мыло его отправит... ? Зарание спасибо....хотелось бы розобратся с этим...і мой е-майл: [email protected] Это сообщение отредактировал(а) julianusti - 19.9.2007, 08:59 |
|||
|
||||
zkv |
|
|||
![]() ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 2133 Регистрация: 23.7.2006 Где: Санкт-Петербург Репутация: 16 Всего: 92 |
||||
|
||||
SenkraD |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 933 Регистрация: 3.2.2006 Где: Украина::Киев Репутация: 4 Всего: 23 |
julianusti, zkv, прицепил проект, но как написано вверху мной и NiJazz его ещё править нуно и нуно )))
Присоединённый файл ( Кол-во скачиваний: 17 ) ![]() |
|||
|
||||
julianusti |
|
|||
Новичок Профиль Группа: Участник Сообщений: 10 Регистрация: 23.8.2007 Где: Украина, Львов Репутация: нет Всего: нет |
Да над проектом нужно еще поработать...но всеравно лучше что то чем ничего.
SenkraD а ты бы не мог детальную бизнес логику описать проекта. Может еще какие-то полезные линки подкинишь ? спасибо ![]() |
|||
|
||||
![]() ![]() ![]() |
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | Visual C++/MFC/WTL | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |