| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > C/C++: Системное программирование и WinAPI > Как настроить Progress Bar |
| Автор: Riddik 21.9.2009, 14:32 |
| Можно ли как-нибудь настроить прогресс_бар для корректного отображения процесса обхода всех файлов на диске в процентном соотношении? Например, для этого узнать, сколько всего файлов на диске - как это можно сделать? |
| Автор: jonie 21.9.2009, 14:49 |
| если драйвер fs не выдает общее количество inide-ов, которое есть на FS, то как же вы хотите получить проценты ? Думаю что это невозможно без "хакерских методов" (читай не очень законных).... Прогресс бар имеет смысл делать когда ты знаешь сколько у тебя файлов, и делаешь с ними что-то (например конвертируешь картинки в другой формат). Тогда ты сначала получаешь список чего конвертировать и далее у тебя будет количество.... хотя посмотри вот тут сорцы http://www.locate32.net/ прожка вроде показывает проценты при сканировании... потом нам расскажешь что да как 8) |
| Автор: Andrey44 21.9.2009, 14:50 |
| Можно не по количеству файлов, а по их весу. Узнаешь сколько метров занято на диске, потом в процессе поиска файлов суммируешь их вес и вычисляешь проценты. И устанавливаешь прогресс. |
| Автор: jonie 21.9.2009, 15:01 |
| Andrey44, тут есть много но... во первых не до каждого файла вы можете достучаться чтобы посмотреть его размер, кроме того надо учитывать softlink и hardlink-и .... но это, конечно, лучше чем ничего |
| Автор: Andrey44 21.9.2009, 15:11 |
| Понятное дело что это будет далеко не точное суммирование. Но примерное время и проценты можно узнать |
| Автор: Riddik 21.9.2009, 15:16 |
| Сорцов на 7 мегабайт в архиве. Распаковал - 28. Если в среднем по 20 байт на одну строку, то это 1 468 000 строк кода. Шутите? В любом случае, не могу себе сейчас позволить разбираться в таких сорцах. Насчёт размера тоже не очень подойте. Наверное, придётся просто оставить бегать прогресс бар туда-сюда. |