Вниз
Скачать: CL | DM;

Самый быстрый способ узнать размер папки   Найти похожие ветки 

 
cando ©   (2006-07-23 21:44) [0]

Всвоей программе я нахожу размер папки по сумме размеров всех файлов в неи и подкатологов, размеркоторых я нахожу темже способо,
так как это очень медленный способ прошу подсказать способ побыстрее


 
Мефисто   (2006-07-23 21:50) [1]

cando  ©   (23.07.06 21:44)

Готового нет. Только проходом и подсчетом размеров по всему дереву каталогов и файлов. Пример поиска файлов или каталогов на диске по F1 или в FAQ.


 
cando ©   (2006-07-23 21:55) [2]

Примерно так я и ищу
ну например если мне надо измерить размер папки виндовс, приходиться потратить от 2 до 5 минут! мне надо быстрее в этом то вся проблема!


 
Virgo_Style ©   (2006-07-23 21:59) [3]

cando ©   (23.07.06 21:55) [2]
*с очень умным видом* Надо оптимизировать твой алгоритм.


 
cando ©   (2006-07-23 22:04) [4]

Virgo_Style-> сможешь написать свой вариант?


 
Мефисто   (2006-07-23 22:16) [5]


> cando ©   (23.07.06 22:04) [4]


Факторов несколько:
1 - алгоритм поиска (чем проще - тем шустрее :) )
2 - количество файлов в каталоге и подкаталогах
3 - фрагментация этих файлов
4 - включить индексирование файлов

Windows? Total Commander тоже долго считают размер каталога в зависимости от объема. Хочешь их обогнать? :)


 
cando ©   (2006-07-23 22:22) [6]

Да хотелось бы!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!


 
Virgo_Style ©   (2006-07-23 22:31) [7]

Полагаю, что смогу.


 
cando ©   (2006-07-23 22:45) [8]

просьба продемонстрировать :)


 
Мефисто   (2006-07-23 22:52) [9]


> cando ©   (23.07.06 22:45) [8]


Сначала твой код :) А то мы покритиковать обычно любим :)))


 
cando ©   (2006-07-23 23:11) [10]

мой код очень большой он однавременно со сканированием записывает положени папок и файло их размеров, вобщем создает полную карту файловой системы, над ним я около часа пыхтел(из за недостатка знаний) и теперь переделывать или новый прописывать лениво!!!!!!!!!!!!!

твой код мне интересно узнать чтобы возможно ускорить этот процесс

общий вид мой код имеет такой

СКАНИРУЕМ НАЧАЛЬНУЮ ДИРЕКТОРИЮ
  ССУМИРУЕМ РАЗМЕРЫ НАЙДЕНЫХ ФАЛОВ
      НАЙДЕННЫЕ ДИРРЕКТОРИИ ВЫСТАВЛЯЕМ В ПОРЯДОК СКАНИРОВАНИЯ
ПОВТОРЯЕМ С НИМИ ОПЕРАЦИЮ С ПЕРВОЙ

И ТАК ДО ОКОНЧАНИЯ ДЕРЕВА КАТАЛОГОВ!!!!!


 
KilkennyCat ©   (2006-07-24 00:15) [11]

> вобщем создает полную карту файловой системы


зачем ее создавать, она уже создана.


 
begin...end ©   (2006-07-24 08:44) [12]

Без перебора, действительно, никак. Но перебор вовсе необязательно делать самому -- можно попросить об этом систему:

var
 FSO, Folder: OleVariant;
begin
 FSO := CreateOleObject("Scripting.FileSystemObject");
 Folder := FSO.GetFolder("C:\Windows");
 ShowMessage(Folder.Size);
 ...
end


 
begin...end ©   (2006-07-24 08:45) [13]

Вдогонку: uses ComObj.



Страницы: 1 вся ветка

Скачать: CL | DM;



Память: 0.48 MB
Время: 0.025 c
3-1149749739
Snik
2006-06-08 10:55
2006.08.13
Как из базы достать все поля в которых ничего нет


8-1140421786
DVM
2006-02-20 10:49
2006.08.13
Wavelet - сжатие изображений.


15-1152112654
Nizon
2006-07-05 19:17
2006.08.13
OpenGL or DirectX


15-1153252165
Ketmar
2006-07-18 23:49
2006.08.13
всё -- досисадминился


15-1153295562
Bless
2006-07-19 11:52
2006.08.13
Нужна помощь с переводом




   Наверх