Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2006.08.13;
Скачать: 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 вся ветка

Текущий архив: 2006.08.13;
Скачать: CL | DM;

Наверх




Память: 0.49 MB
Время: 0.051 c
4-1144744035
Grant
2006-04-11 12:27
2006.08.13
Функция ShellExecute


2-1153730953
koha
2006-07-24 12:49
2006.08.13
Помогите вывести AVI на форму


8-1139581351
Eraser
2006-02-10 17:22
2006.08.13
MIXERLINE.dwComponentType и запись со стереомикшера


1-1151466158
hgd
2006-06-28 07:42
2006.08.13
Детектор движения


15-1153114530
Ega23
2006-07-17 09:35
2006.08.13
С Днём рождения! 15-17 июля