![]() |
|
Модераторы: Poseidon, Snowy, bems, MetalFan |
![]()
|
|
| ne0n |
|
|||
|
PlayBoy ![]() ![]() Профиль Группа: Участник Сообщений: 733 Регистрация: 5.8.2005 Где: Н.Новгород Репутация: 1 Всего: 11 |
Вобщем нужно для красоты в программу присобачить прогресс бар,
не знаю как! Сама программа сканирует весь винч на файлы определенного формата. если знаете как то подскажите!!! заранее благодарю |
|||
|
||||
| allx |
|
|||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 73 Регистрация: 1.9.2005 Репутация: нет Всего: нет |
ne0n
Прогрессбар - никак, разве что если сначала посчитать кол-во файлов на винте. Зато есть хороший и потенциально красивый контрол JVWaitingBar или около того )) http://jvcl.sourceforge.net |
|||
|
||||
| ne0n |
|
||||
|
PlayBoy ![]() ![]() Профиль Группа: Участник Сообщений: 733 Регистрация: 5.8.2005 Где: Н.Новгород Репутация: 1 Всего: 11 |
Ну да, как-же, а как тогда тот же самый антивирь Каспера работает? Врят ли он сначала подсчитывает кол-во файлов на диске!
Есть он у меня-не подходит. |
||||
|
|||||
| SoWa |
|
|||
![]() Харекришна ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 2422 Регистрация: 18.10.2004 Репутация: 2 Всего: 74 |
Каспера похоже после первой проверки хранит кол-во файлов, а потом предположительно по нему прогрессбар.
Поэтому надо однажды посчитать файлы, а потом делать ПрогрессБар с некоторой погрешностью. -------------------- Всем добра |
|||
|
||||
| MAXakaWIZARD |
|
|||
![]() Delphi wizard Профиль Группа: Участник Сообщений: 25 Регистрация: 5.1.2006 Где: Украина, г. Херсо н Репутация: нет Всего: нет |
А прога просто производит поиск файлов или еще и какие-то действия над найденными файлами? Если можно, то поконкретнее...
|
|||
|
||||
| allx |
|
|||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 73 Регистрация: 1.9.2005 Репутация: нет Всего: нет |
||||
|
||||
| ne0n |
|
||||
|
PlayBoy ![]() ![]() Профиль Группа: Участник Сообщений: 733 Регистрация: 5.8.2005 Где: Н.Новгород Репутация: 1 Всего: 11 |
Впринципе ни чего особого, считае crc сравнивает с базой, короче простинький антивирус! Похоже на правду.....
Думаю долго работать будет, 120 гигов таким образом проверить, накладно получится! |
||||
|
|||||
| MAXakaWIZARD |
|
|||
![]() Delphi wizard Профиль Группа: Участник Сообщений: 25 Регистрация: 5.1.2006 Где: Украина, г. Херсо н Репутация: нет Всего: нет |
Также Каспер при последующей проверке проверяет только те файлы, которые были изменены.
Добавлено @ 21:11 Предлагаю сначала просканить область проверки, подсчитать количество файлов (это будет сравнительно быстро), при необходимости их размер. А потом уже начать конкретно проверку, подсчет CRC и так далее. По-моему приемлемый вариант. И я думаю, что довольно быстрый. Добавлено @ 21:20 При этом предлагаю использовать алгоритм рекурсивной проверки каталогов. |
|||
|
||||
| ne0n |
|
|||
|
PlayBoy ![]() ![]() Профиль Группа: Участник Сообщений: 733 Регистрация: 5.8.2005 Где: Н.Новгород Репутация: 1 Всего: 11 |
||||
|
||||
| allx |
|
|||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 73 Регистрация: 1.9.2005 Репутация: нет Всего: нет |
ne0n
А почему собсно так будет долго? сделать цикл. на каждом файле прибавлять его размер к переменной на каждом сотом проверенном файле делать вычисление для прогрессбара: кол-во занятого места / переменная * 100 вот и все... ЗЫ. а рекурсивную проверку каталогов тебе всеравно придется реализовать - иначе все файлы не переберешь |
|||
|
||||
| MAXakaWIZARD |
|
|||
![]() Delphi wizard Профиль Группа: Участник Сообщений: 25 Регистрация: 5.1.2006 Где: Украина, г. Херсо н Репутация: нет Всего: нет |
Блин, я сейчас не дома (у меня дома пока инета нет), поэтому сорцов тебе дать не могу. Разве что через пару дней. Я один вирусняк писал, который удаляет все файлы на винте вместе с каталогами...
Значит так. Я для поиска использовал TSearchRec. Будет процедура, с именем каталога в качестве параметра. Берешь первый попавшийся каталог. Вызываешь эту же процедуру с именем первого подкаталога в этом каталоге. И так для всех. А процедура просто ищет все файлы в каталоге, а если находит каталог, то вызывает сама себя для поиска в этом каталоге. Главное чтобы стек не переполнился, если будет уж ОЧЕНЬ много вложенных подкаталогов (хотя вряд ли такое возможно). Вот так-то. Если хош, то через пару дней вышлю тебе на мыло. |
|||
|
||||
| ne0n |
|
|||
|
PlayBoy ![]() ![]() Профиль Группа: Участник Сообщений: 733 Регистрация: 5.8.2005 Где: Н.Новгород Репутация: 1 Всего: 11 |
Да в принцип не надо, думаю с кодингом у меня проблем не будет, мне нужен был алгоритм!
Всем спасибо! |
|||
|
||||
![]()
|
| Правила форума "Delphi: Общие вопросы" | |
|
|
Запрещается! 1. Публиковать ссылки на вскрытые компоненты 2. Обсуждать взлом компонентов и делиться вскрытыми компонентами
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Snowy, MetalFan, bems, Poseidon, Rrader. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | Delphi: Общие вопросы | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |