Главная страница
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.093 c
15-1151308474
Анонимщики
2006-06-26 11:54
2006.08.13
Летний чемпионат сайта по шахматам


6-1143521276
balepa
2006-03-28 08:47
2006.08.13
TcpServer(Client)


15-1152793731
Yeg
2006-07-13 16:28
2006.08.13
Siemens AT Commands


2-1153487778
bajenovv
2006-07-21 17:16
2006.08.13
кнопка


2-1153772633
__Dmitry__
2006-07-25 00:23
2006.08.13
BDS2006 компоненты