Вверх ↑
Этот топик читают: Гость
Ответов: 2059
Рейтинг: 132
#31: 2016-05-30 03:04:53 ЛС | профиль | цитата
Tad, Спасибо.
Идея понятна.
карма: 6

0
Главный модератор
Ответов: 2999
Рейтинг: 396
#32: 2016-05-30 07:04:06 ЛС | профиль | цитата
flint2 писал(а):
...я Нестифоров Лев Николаевич...

[flood]Знавал мужчину по кличке «Зоопарк». В миру звался Лев Михайлович Волков.[/flood]
карма: 6
Дорогу осилит идущий. Install/Update HiAsm.NET
0
Ответов: 2059
Рейтинг: 132
#33: 2016-05-30 09:47:39 ЛС | профиль | цитата
Nic, [flood]я Гумилёва и Толстого знаю, и князя Мышкина, а твой приятель всё -таки "Михалыыч".
На Руси Лёв Николаевичей, как в Бразилии Донов Педро.
[/flood]
карма: 6

0
Ответов: 4630
Рейтинг: 749
#34: 2016-05-30 10:33:24 ЛС | профиль | цитата
flint2 писал(а):
размер буфера надо определять самому, а не автоматически определяется, а как определить сколько соломки надо подстелить?
В зависимости от FileInformationClass, размер возвращаемой структуры известен, неизвестными остаются длины файлов, можно предполагать, что длина не превышает 1024 символа. Выделять буфер из расчета на сотню-другую структур.
flint2 писал(а):
С запасом тоже не хочется буфер делать, может понадобится раз в год
Функция запишет столько структур, сколько влезет в буфер. Поэтому место будет заполнено максимально эффективно.
flint2 писал(а):
Нужны преобразования из String в PWideChar
Ничего сложного.
карма: 26

0
Ответов: 2059
Рейтинг: 132
#35: 2016-05-30 10:59:23 ЛС | профиль | цитата
Netspirit, Всё справедливо и ничего сложного. (делал и всё заметно быстрее работало, но...)
По поводу размера - я делал Buffer:array [0..65535] of byte;
Но его на некоторых папках не хватало.
В каком то описании сказано, что по такой ошибке надо удваивать буфер, если опять не хватит - то ещё, как сделано в Total Commander.
Намекают на динамическое выделение памяти. Но это тоже не беда, мне нужно количество файлов, а не список, по этому можно рекурсивно обходя папки суммировать, а список очищать перед итерацией. В общем можно покумекать.
Но такое количество накладных расходов, в виде программного кода и занимаемой памяти...
А всего лишь надо установить максимальное значение прогрссбара, чтобы наблюдать процесс обработки файлов.
Получается - из пушки по воробьям.
P.S.
Кстати, при динамическом выделении памяти проблемы снимаются.
Посчитал, да очистил память.
Остаётся uses some_ntdef,... , но это не большие расходы.

карма: 6

0
Ответов: 2059
Рейтинг: 132
#36: 2016-06-07 19:55:14 ЛС | профиль | цитата
[flood]
flint2 писал(а):

Всех, кто хочет посмеяться надо мной, и вообще... кто добрые чувства сохранил

Эх дон andrestudio, как тебя сегодня не хватало!...
https://yadi.sk/i/W6xrQn-DsKswz
[/flood]
карма: 6

0
36
Сообщение
...
Прикрепленные файлы
(файлы не залиты)