Работа с zip архивами29.10.2024, 02:49. Показов 24967. Ответов 283
Метки нет (Все метки)
Из всего, что попадалось по теме сжатия/распаковки ZIP наиболее интересные были примеры с использованием библиотеки Zlib. Оригинальная zlib использует cdecl экспорт функций, но есть реализация zlibwapi.dll, которую можно использовать в VB. Вот хороший пример использования. Там можно увидеть как сжть/распаковать массив байтов, но вот беда, очень сложно найти пример под VB с более обширным использованием, способной на большее, данной либы, которая не есть простая, там есть функции с использованием множества параметров констант и длинных структур, которые чтобы узнать наверное надо долго копатся в сишных заголочниках. Но HackerVlad в личной беседе говорил, что у него есть исходники с использованием данной библиотеки, поэтому любезно прошу его поделиться данной информацией.
Добавлено через 1 минуту кстати словосочетание zip-архивами в названии форум блочит почему-то )Добавлено через 6 минут На одном форуме есть хороший пример испльзования функций zlib для извлечения/распаковки отдельных файлов, там Кликните здесь для просмотра всего текста
обсуждался какой-то экзотический ЯП Clarion, но очень наглядно
Здесь подробное описание функций, структур и констант, однако я не нашел там unzGetCurrentFileInfo и т.п.
0
|
||||||
| 29.10.2024, 02:49 | |
|
Ответы с готовыми решениями:
283
Работа с ZIP-архивами - распаковка файлов Автоматизировать заполнение "Графика выполненных работ по месяцам" Задания из лаб.работ |
|
Вернулся
1782 / 677 / 46
Регистрация: 10.09.2021
Сообщений: 2,840
|
|||
| 08.11.2024, 16:45 | |||
|
Добавлено через 2 минуты locm, вы думаете что я не гуглил? я гуглил, на одних сайтах одно, а на других сайтах другое. Когда гуглишь ещё больше начинаешь запутываться так как все по разному пишут. Противоречий много. Добавлено через 1 минуту Я считаю и убеждён что cp1251 это ANSI и это однобайтная. Хотя все сайты могут по разному писать и толковать. В разных источниках по разному.
0
|
|||
| 08.11.2024, 16:50 | |
|
0
|
|
|
Модератор
|
||||
| 09.11.2024, 01:03 | ||||
|
2
|
||||
|
Модератор
|
|||||||
| 09.11.2024, 14:04 | |||||||
Если нужно хранить архив в ехе есть еще вариант запихать его в конец ехе. Получится SFX архив. Либо организовать там хранение нескольких архивов через этот класс.
1
|
|||||||
| 10.11.2024, 08:44 [ТС] | |||||||
Ах, туплю, там же есть готовый пример - Maker, там действительно, жмешь Save EOF Data, и файл подрастает в размере - класс! ) Добавлено через 3 часа 33 минуты Фактически данный код наверное можно использовать вместо редактора ресурсов. Но я не знаю, конечно есть ли какие-то недостатки у стандартного редактора ресурсов (я им просто не пользовался). Но в данном случае можно просто любой файл либо в исходном виде, либо как-то сжать/зашифровать и т.д. и дописать в тело исполняемого файла (если так можно выразиться). А если портировать данный код в Twin Basic, то там к работе с этими файлами добавятся дополнительные возможности вроде загрузки/выгрузки Изображения из байтовго массива и т.д..
1
|
|||||||
| 10.11.2024, 19:33 [ТС] | ||
|
0
|
||
|
Модератор
|
||
| 11.11.2024, 00:04 | ||
|
2
|
||
| 11.11.2024, 14:10 [ТС] | ||||||
|
Не лишним, думаю, будет отметить в данном треде, также этот замечательный код HackerVlad-а для работы с cab-архивами, модуль получения информации о cab я немножко доработал под x64/Wide..
Кликните здесь для просмотра всего текста
1
|
||||||
|
Вернулся
1782 / 677 / 46
Регистрация: 10.09.2021
Сообщений: 2,840
|
||
| 11.11.2024, 14:45 | ||
|
Добавлено через 7 минут Хотя может и стоило мне всё-таки W-функции написать, вдруг CAB-архив запихнут в какую-нибудь китайскую папку, хотябы чтобы путь считывало... Но внутри CAB точно никакой китайщины просто быть не может.
0
|
||
|
Вернулся
1782 / 677 / 46
Регистрация: 10.09.2021
Сообщений: 2,840
|
|
| 11.11.2024, 15:06 | |
|
testuser2, да ты молодец что сделал, а твоя версия модуля будет работать в vb6?
0
|
|
| 11.11.2024, 15:16 [ТС] | |||||||
1
|
|||||||
|
Вернулся
1782 / 677 / 46
Регистрация: 10.09.2021
Сообщений: 2,840
|
||
| 11.11.2024, 15:18 | ||
|
testuser2, да ты молодец что сделал, а твоя версия модуля будет работать в vb6?
0
|
||
| 11.11.2024, 15:32 [ТС] | ||
|
0
|
||
|
Вернулся
1782 / 677 / 46
Регистрация: 10.09.2021
Сообщений: 2,840
|
|
| 11.11.2024, 18:40 | |
|
testuser2, кстати не знаешь почему майкрософтовские cab-архивы называются MSZIP? Ну и путаница из-за этого сразу можно подумать что это ZIP а не CAB ума не приложу почему они так назвали метод сжатия алгоритм MSZIP если это CAB а не ZIP
0
|
|
|
Вернулся
1782 / 677 / 46
Регистрация: 10.09.2021
Сообщений: 2,840
|
|
| 12.11.2024, 05:45 | |
|
Ну пришло время мне извиниться и объясниться. Я хочу объяснить, почему я думал неправильно насчёт ANSI. Всё очень просто я ввожу поисковой запрос в Яндекс и мне Яндекс сразу на первой строчке выдаёт ответ. И я слепо доверял этому быстрому ответу. Я просто не знал что Яндекс может врать оказывается.
Например я ввожу в поиск ANSI это однобайтная или многобайтная кодировка мне выдаёт сразу на первой позиции в Яндексе что это однобайтная. Поэтому я слепо верил в это... Только сегодня я понял окончательно, что Яндекс врёт в быстрых ответах, сегодня я переписывал коды с языка C++ и мне нужно было срочно узнать сколько байтов занимает ULONG. Опять как обычно я ввожу в Яндекс поисковой запрос ULONG в языке C++ это сколько байтов и что вы думаете мне отвечает Яша? Нагло врёт что 8 байтов. Я слепо поверил этому ответу и начал писать в своих кодах As Currency вместо As Long из-за чего конечно мои коды не работали... Только потом мне fafalone объяснил что ULONG это 4 байта, а не 8 как я думал. Во всём виноват Яша получается. Откуда Яндекс берёт эти быстрые ответы? Даже не знаю наверное берёт с первого попавшегося сайта, где может быть написана неправда. Например такая неправда о 8 байтах берётся даже с этого Киберформа, что меня удивило вот здесь: https://www.cyberforum.ru/blog... g7429.html написано что ulong это 8 байтов якобы, хотя если потом прокрутить страницу и прочитать комментарии снизу там написано что ulong это 4 байта, и даётся опровержение как бы. Понимаете почему и происходит такая путаница. Потому что кто-то публикует неверные ответы и выдаёт их за чистую монету как бы.
0
|
|
|
Вернулся
1782 / 677 / 46
Регистрация: 10.09.2021
Сообщений: 2,840
|
|
| 12.11.2024, 05:57 | |
|
В общем я пожаловался в Яндекс на этот неправильный быстрый ответ.
Добавлено через 1 минуту The trick, как пожаловаться на этот пост? https://www.cyberforum.ru/blog... g7429.html они там написали неправду, ввели в заблуждение меня и миллионы пользователей яндекса заодно, представляю сколько часов бедные люди потратят на поиск ошибки в своих кодах из-за того что будет думать что ULONG это 8 байтов якобы. Добавлено через 4 минуты Однако ULONG в VisualBasic .Net всё таки может быть и 8 байтов откуда всё таки наверное путаница и пошла...
0
|
|
| 12.11.2024, 07:37 [ТС] | |||||||||
Добавлено через 8 минут Но в типах Winows тоже есть непонятки. Тип Long четко обозначен как 32 битный. Но есть еще тип LongLong. Что значит Double?
Добавлено через 7 минут Большинство типов C++ это фактически алиасы. В Твин-Бейсике тоже обещают поддержку алиасов в будущем. Во Фри Бейсике они есть, но там вообще, сам язык как алиас C++ Добавлено через 4 минуты Здесь с++ long на рисунке 4 байта, а в таблице - 8 байт Добавлено через 2 минуты Хотя нет, там в таблице long long
1
|
|||||||||
| 12.11.2024, 07:44 [ТС] | |
|
Хорошая табличка. Фактически основные типы int, long и ptr(указатель) остальные уже от них "пляшут"
0
|
|
| 12.11.2024, 07:44 | |
|
access и zip архив Как распаковать ZIP-файл в 7z?
Замена файла в zip архиве при совпадении имени Как сделать архив zip? Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
Транслитерация текста с кириллицы на латиницу (вариант №2)
Maks 13.11.2026
Обновленная версия ранее созданной обработки.
Добавлено:
- Проверка исходного текста на кириллицу, через обращение к стандартной функции "ТолькоКириллицаВСтроке" из общего модуля. . .
|
Часы с термометром и праздничным календарем
yariko 12.11.2026
Сегодня мы рассмотрим как можно сделать отличные многофункциональные часы.
Итак, поставим конкретную задачу: разработать часы с календарем, двумя термодатчиками, выводом поздравительных сообщений. . .
|
Транслитерация текста с кириллицы на латиницу (вариант №1)
Maks 11.11.2026
Решил облегчить жизнь себе и коллегам админам при создании электронных почтовых ящиков для пользователей, в результате написал обработку "Транслитерация текста" с кириллицы на латиницу, а в ней. . .
|
Книги по геймдизайну, левел-дизайну, игровым механикам и проектированию игрового опыта
8Observer8 08.11.2026
Содержание блога | English Version
1. 2003 - 06 - Designing Virtual Worlds (1st Edition)
Автор: Richard A. Bartle | Объем: 768 стр.
Ссылки: Amazon
. . .
|
|
Родители токсичные абьюзеры по отношению к своим детям ругают их оскорбляют не любят
zorxor 08.11.2026
Жить в атмосфере постоянных оскорблений, критики и холодности со стороны родителей — это тяжелое и болезненное испытание, которое оставляет глубокие эмоциональные раны. Токсичное и абьюзивное. . .
|
Как только я захожу к себе в свою комнату я сразу же с себя снимаю свои трусы. Ответ от Джемени ИИ.
zorxor 08.11.2026
Джемени, как только я захожу к себе в свою комнату я сразу же с себя снимаю свои трусы.
Многие люди, возвращаясь домой, сразу переодеваются в максимально свободную одежду или вовсе предпочитают. . .
|
Паттерн очереди действий/команд (Action / Command Queue). Система очереди действий и кат-сцен с SDL3 Callbacks, cglm и OpenGL
8Observer8 07.11.2026
Содержание блога | English Version
Руководство для начинающих по реализации паттерна очереди действий/ команд (Action / Command Queue) на C++ (C++20) с использованием официального SDL3 Callbacks. . .
|
Проверка полного ФИО в типовом справочнике
Maks 07.11.2026
Решение реализовано в конфигурации КА2, на примере справочника "КонтактныеЛицаПартнеров".
Задача:
Запрет инициалов.
Не допускаеть использование сокращений вида "И. И. ", "И. И. ", "И И" и. . .
|