Узнать число файлов на диске C: [Win]
Походу GetDiskFreeSpaceEx не считает корзину занятой, это я тупил с 64-ти битными числами. Но все равно метод с размером дурацкий.
Можно как вариант число занятых инодов посмотреть. Наверняка в ФС должна быть информация эта дотсупна быстро.
Можно как вариант число занятых инодов посмотреть. Наверняка в ФС должна быть информация эта дотсупна быстро.+1
только ещё по маунт поинтам пройтись (если это нтфс)...
Если вдруг окажется, что фс - фат, то, скорее всего, единственный способ - низкоуровнево считать всю таблицу fat и подсчитать количество последних кластеров файла.
Оставить комментарий
Devid
Функция проходит по всем файлам диска C: с помощью FindNextFile и делает с ними некоторую быструю операцию. Необходимо отображать прогресс (0%-100%) этого процесса. Есть два варианта:1) Посчитать число файлов на диске, но это займет всего раза в 2-3 меньше времени, чем сама функция, если файлы считать с помощью FindNextFile. Можно ли их посчитать быстрее?
2) Посчитать свободное место на диске с помощью GetDiskFreeSpaceEx и суммировать размеры пройденных файлов.
Но это во-первых неточно отображает прогресс, т.к. функция не зависит от размера файлов.
Во-вторых GetDiskFreeSpaceEx считает занятым место, отведенное под корзину, хотя функция по этому месту не пройдет и прогресс в итоге будет меньше 100%.