Работа с zip архивами29.10.2024, 02:49. Показов 24141. Ответов 283
Метки нет (Все метки)
Из всего, что попадалось по теме сжатия/распаковки ZIP наиболее интересные были примеры с использованием библиотеки Zlib. Оригинальная zlib использует cdecl экспорт функций, но есть реализация zlibwapi.dll, которую можно использовать в VB. Вот хороший пример использования. Там можно увидеть как сжть/распаковать массив байтов, но вот беда, очень сложно найти пример под VB с более обширным использованием, способной на большее, данной либы, которая не есть простая, там есть функции с использованием множества параметров констант и длинных структур, которые чтобы узнать наверное надо долго копатся в сишных заголочниках. Но HackerVlad в личной беседе говорил, что у него есть исходники с использованием данной библиотеки, поэтому любезно прошу его поделиться данной информацией.
Добавлено через 1 минуту кстати словосочетание zip-архивами в названии форум блочит почему-то )Добавлено через 6 минут На одном форуме есть хороший пример испльзования функций zlib для извлечения/распаковки отдельных файлов, там Кликните здесь для просмотра всего текста
обсуждался какой-то экзотический ЯП Clarion, но очень наглядно
Здесь подробное описание функций, структур и констант, однако я не нашел там unzGetCurrentFileInfo и т.п.
0
|
||||||
| 29.10.2024, 02:49 | |
|
Ответы с готовыми решениями:
283
Работа с ZIP-архивами - распаковка файлов Автоматизировать заполнение "Графика выполненных работ по месяцам" Задания из лаб.работ |
|
Вернулся
1778 / 673 / 46
Регистрация: 10.09.2021
Сообщений: 2,820
|
||
| 17.02.2025, 15:27 | ||
|
в семёрке может и не показывает taskmgr я хз
но в ProcessHacker'е я действительно нашёл такое понятие как виртуальная память там больше 100 Мб получается, это правда про диспетчер задач в семёрке тоже правда - ничего не показывает Добавлено через 2 минуты
0
|
||
|
Модератор
|
||
| 17.02.2025, 15:36 | ||
|
0
|
||
|
Вернулся
1778 / 673 / 46
Регистрация: 10.09.2021
Сообщений: 2,820
|
|
| 17.02.2025, 15:45 | |
|
The trick, ладно пришлю тебе и сам посмотришь, да в ресурсы я вшивал ну что ты я не знаю ну
Добавлено через 6 минут Не, на 100 Мб вложения форум не потянул. Не получилось.
0
|
|
|
Модератор
|
||||||
| 17.02.2025, 15:53 | ||||||
|
HackerVlad,
0
|
||||||
|
Вернулся
1778 / 673 / 46
Регистрация: 10.09.2021
Сообщений: 2,820
|
|
| 17.02.2025, 16:01 | |
|
1746 выдало в IDE
1851 в EXE что эти цифры значат вообще? Добавлено через 3 минуты всю оперативку засирать зачем, я не понял этого теста.
0
|
|
|
Вернулся
1778 / 673 / 46
Регистрация: 10.09.2021
Сообщений: 2,820
|
|
| 17.02.2025, 16:18 | |
|
Вот посмотри на мой проект. Тест будет на 25 Мб, так как больше залить на форум не получается. Откомпилируй EXE запусти диспетчер задач в семёрке и убедись, что я не обманываю. 25 Мб не будет в памяти.
0
|
|
|
Вернулся
1778 / 673 / 46
Регистрация: 10.09.2021
Сообщений: 2,820
|
|
| 17.02.2025, 16:20 | |
|
Всё, у меня 8 Мб только в памяти в taskmgr.
0
|
|
|
Модератор
|
||
| 17.02.2025, 16:21 | ||
|
При создании 32-битного процесса ему выделяется 2ГБ (можно больше) адресного пространства. В этом пространстве лежат все DLL, EXE, стеки потоков, кучи и любая другая выделяемая процессом память. Частный набор это как раз то что не принадлежит ни одному образу (массивы, строки, стеки и т.п. динамическая память, а также writeable-секции). Все типы памяти занимают адресное пространство (считай виртуальную память) и у тебя просто физически не будет возможности выделить памяти если у тебя EXE файл будет занимать 100МБ столько же сколько ты можешь выделить памяти без такого "жирного" файла. Кладя в ресурсы такие огромные файлы ты просто напросто отжираешь регион памяти который нельзя освободить, такие файлы нужно класть в конец файла (есть еще ньюансы с discardable секциями, но в VB6 никто так заморачиваться не будет).
Вот vmmap как раз и показывает сколько у тебя памяти занято, а сколько доступно. К примеру пустой проект с одной формой при запуске занимает 88МБ виртуальной памяти: Причем стоит учесть что эта память фрагментирована, так к примеру нельзя выделить кусок целиком в 1ГБ, т.к. такого куска просто нет в памяти, но можно навыделять кучу поменьше вплоть почти до 2ГБ. Так что твое утверждение:
0
|
||
|
Вернулся
1778 / 673 / 46
Регистрация: 10.09.2021
Сообщений: 2,820
|
|
| 17.02.2025, 16:32 | |
|
The trick, ладно, ну тогда остаётся загадкой почему обманывает мой taskmgr
А если засунуть в секцию .text тоже будет съедать из виртуальной памяти? Или только ресурсы отъедают? Добавлено через 23 секунды А если в секцию .data?
0
|
|
|
Вернулся
1778 / 673 / 46
Регистрация: 10.09.2021
Сообщений: 2,820
|
||
| 17.02.2025, 16:38 | ||
|
The trick, ты проверил мой проект-тест? у тебя в семёрке что показывает? 25 Мб что ли будет? У меня что глючная винда что ли?
Добавлено через 1 минуту
0
|
||
|
Модератор
|
||
| 17.02.2025, 16:43 | ||
|
Я тебе поэтому и скинул тест где ты выделяешь по 1МБ пока есть память чтобы показать что памяти на 100МБ меньше.
0
|
||
|
Вернулся
1778 / 673 / 46
Регистрация: 10.09.2021
Сообщений: 2,820
|
||
| 17.02.2025, 16:52 | ||
|
Добавлено через 52 секунды Если ты будешь загружать из хвоста EXE у себя в коде данные то тоже начнёт отъедаться оперативка, это будет тогда одно и тоже. Вряд ли ты будешь заморачиваться с нарезанием на чанки.
0
|
||
|
Модератор
|
|||
| 17.02.2025, 16:55 | |||
|
Добавлено через 36 секунд
0
|
|||
|
Вернулся
1778 / 673 / 46
Регистрация: 10.09.2021
Сообщений: 2,820
|
||
| 17.02.2025, 16:59 | ||
|
0
|
||
|
Вернулся
1778 / 673 / 46
Регистрация: 10.09.2021
Сообщений: 2,820
|
|
| 17.02.2025, 19:39 | |
|
The trick, ну ок, я понял, значит отъедает память, ок
Добавлено через 5 минут The trick, а в vb6 ограничивает размер компилируемого exe в 2Гб? Добавлено через 42 секунды Или и того меньше наверное)))) не пробовал прям гигабайтами целыми никогда) Добавлено через 2 часа 10 минут Я протестировал работу класса от The Trick, где в хвост EXE записываются файлы, так вот при чтении этих файлов, тоже код класса довольно много отъедает виртуальной памяти, пик даже в три раза превышает размер вложения в EXE (я тестировал на 25 Мб) у меня больше чем 75 Мб пик идёт, пока не понял почему. Добавлено через 1 минуту Но зато понравилось что имена файлов в юникоде хранятся, это интересная особенность, по сути можно было бы сделать само-распаковывающийся архив на этой технологии, а буфера файлов распаковывать любым алгоритном, не важно каким, сам список файлов вшивается по технологии The Trick это интересно конечно. Добавлено через 1 минуту Не понравилось только то что к EXE прибалвяется около 40 Кб по размеру класса. Если писать SFX своё EXE то плюс 40 Кб это много Добавлено через 2 минуты Хотя тогда пришлось бы допиливать этот класс и вшивать ни только имена файлов но и дату время и атрибуты файлов... Короче не подойдёт для SFX exe Добавлено через 2 минуты Но суть в том, что эта система точно так же отъедает и виртуальную память и оперативную, в чём разница тогда, в ресурсы зашью, в секцию .text или в хвост EXE
0
|
|
|
Модератор
|
||||
| 17.02.2025, 19:44 | ||||
|
0
|
||||
| 17.02.2025, 19:44 | |
|
access и zip архив Как распаковать ZIP-файл в 7z?
Замена файла в zip архиве при совпадении имени Как сделать архив zip? Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
ИИ не может найти нужный язык в списке
Supersumestria 05.10.2026
Я ему даю вот такое изображение и прошу найти и подчеркнуть немецкий язык.
Возвращает он вот это:
https:/ / i. **********/ vqBWLe2. png
Нужную строчку в 3й колонке просто выдумал. .
Это. . .
|
Новая последняя моя музыка в SUNO
zorxor 05.10.2026
Здравствуйте, дорогие мои друзья! С большой радостью я хотел бы представить вам свою новую последнею музыку, которую сгенерировала мне по моей просьбе нейросеть SUNO. С уважением, zorxor.
Это. . .
|
Программный домашний кинотеатр
russiannick 27.09.2026
Сподобился на программный домашний кинотеатр. В качестве ЯВУ по традиции выбрал js.
В помощники взял Яндекс-Алису.
Было создано три зала на разные интересы.
исторические и ретро
сериал Хичкок. . .
|
Беседа с ИИ о программистах, недопускающих к созданию и правке кода генеративные ИИ и причины этого
zorxor 21.09.2026
Раньше я радовался или получал некоторые эмоции, пусть небольшие, но всё же, от самого процесса написания кода, рекомпиляции и запуска, видя постепенное развитие программы и прочее. А теперь лень. . .
|
|
Мобильное приложение ColorStep
pavlinmavlin 17.09.2026
Реализовал приложение Красный, Зеленый, Синий в Unity3d + c#.
Название изменил на ColorStep.
Приложение прошло модерацию и теперь доступно для скачивания. Делал его сам, шаг за шагом — и вот,. . .
|
Запрет дублирования строк в табличной части
Maks 13.09.2026
Реализация из решения ниже выполнена на нетиповом справочнике "Нормы ТО" с табличной часть "Виды ТО", разработанного в КА2, со следующими реквизитами:
- ВидТО (СправочникСсылка. ВидыТО);
- ВидГСМ. . .
|
Скрипты Tampermonkey для CyberForum, ChatGPT, Claude и пр.
Jin X 06.09.2026
Скрипты Tampermonkey для CyberForum, ChatGPT, Claude и пр.
Работая с форумом и нейросетями в браузере часто хочется что-то подкорректировать или добавить какого-то функционала.
Ниже прикреплён. . .
|
Программа опроса у.з. расходомера SLS-720F
Argus19 02.09.2026
Программа опроса у. з. расходомера SLS-720F
Программа опрашивает один раз в минуту три ультразвуковых расходомера SLS-720F через интерфейс RS-485 по протоколу Modbus RTU.
Опрашиваются регистры. . .
|