Главная страница
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.047 c
2-1153401611
Константин_
2006-07-20 17:20
2006.08.13
Ошибка No current record при попытке редактирования данных


15-1153377144
Ega23
2006-07-20 10:32
2006.08.13
Пропали хинты в IDE Delphi


2-1153835783
WolfRamm
2006-07-25 17:56
2006.08.13
Zeos


15-1153145240
PSPF2003
2006-07-17 18:07
2006.08.13
Название фильма.


15-1152956535
PSPF2003
2006-07-15 13:42
2006.08.13
Эмулятор ОС