Работа с zip архивами29.10.2024, 02:49. Показов 23006. Ответов 283
Метки нет (Все метки)
Из всего, что попадалось по теме сжатия/распаковки ZIP наиболее интересные были примеры с использованием библиотеки Zlib. Оригинальная zlib использует cdecl экспорт функций, но есть реализация zlibwapi.dll, которую можно использовать в VB. Вот хороший пример использования. Там можно увидеть как сжть/распаковать массив байтов, но вот беда, очень сложно найти пример под VB с более обширным использованием, способной на большее, данной либы, которая не есть простая, там есть функции с использованием множества параметров констант и длинных структур, которые чтобы узнать наверное надо долго копатся в сишных заголочниках. Но HackerVlad в личной беседе говорил, что у него есть исходники с использованием данной библиотеки, поэтому любезно прошу его поделиться данной информацией.
Добавлено через 1 минуту кстати словосочетание zip-архивами в названии форум блочит почему-то )Добавлено через 6 минут На одном форуме есть хороший пример испльзования функций zlib для извлечения/распаковки отдельных файлов, там Кликните здесь для просмотра всего текста
обсуждался какой-то экзотический ЯП Clarion, но очень наглядно
Здесь подробное описание функций, структур и констант, однако я не нашел там unzGetCurrentFileInfo и т.п.
0
|
||||||
| 29.10.2024, 02:49 | |
|
Ответы с готовыми решениями:
283
Работа с ZIP-архивами - распаковка файлов Автоматизировать заполнение "Графика выполненных работ по месяцам" Задания из лаб.работ |
|
Вернулся
1753 / 649 / 45
Регистрация: 10.09.2021
Сообщений: 2,805
|
|||
| 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
|
||||||
|
Вернулся
1753 / 649 / 45
Регистрация: 10.09.2021
Сообщений: 2,805
|
||
| 11.11.2024, 14:45 | ||
|
Добавлено через 7 минут Хотя может и стоило мне всё-таки W-функции написать, вдруг CAB-архив запихнут в какую-нибудь китайскую папку, хотябы чтобы путь считывало... Но внутри CAB точно никакой китайщины просто быть не может.
0
|
||
|
Вернулся
1753 / 649 / 45
Регистрация: 10.09.2021
Сообщений: 2,805
|
|
| 11.11.2024, 15:06 | |
|
testuser2, да ты молодец что сделал, а твоя версия модуля будет работать в vb6?
0
|
|
| 11.11.2024, 15:16 [ТС] | |||||||
1
|
|||||||
|
Вернулся
1753 / 649 / 45
Регистрация: 10.09.2021
Сообщений: 2,805
|
||
| 11.11.2024, 15:18 | ||
|
testuser2, да ты молодец что сделал, а твоя версия модуля будет работать в vb6?
0
|
||
| 11.11.2024, 15:32 [ТС] | ||
|
0
|
||
|
Вернулся
1753 / 649 / 45
Регистрация: 10.09.2021
Сообщений: 2,805
|
|
| 11.11.2024, 18:40 | |
|
testuser2, кстати не знаешь почему майкрософтовские cab-архивы называются MSZIP? Ну и путаница из-за этого сразу можно подумать что это ZIP а не CAB ума не приложу почему они так назвали метод сжатия алгоритм MSZIP если это CAB а не ZIP
0
|
|
|
Вернулся
1753 / 649 / 45
Регистрация: 10.09.2021
Сообщений: 2,805
|
|
| 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
|
|
|
Вернулся
1753 / 649 / 45
Регистрация: 10.09.2021
Сообщений: 2,805
|
|
| 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? Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
| Опции темы | |
|
|
Новые блоги и статьи
|
|||
|
Был там один разговор по поводу свободы в материальном мире.
kumehtar 19.08.2026
Суть: рассматривается живое существо, оказавшееся внутри довольно странной системы (этого мира) и пытающееся обустроить в ней свой кусок пространства.
Жизнь действительно предъявляет каждому. . .
|
Когда логика программы не спасает от человеческих ошибок
Maks 18.08.2026
В последнее время всё чаще и чаще сталкиваюсь с таким явлением, как абсолютная невнимательность (или глупость) пользователей. Проявляется это чаще всего на работе в коллективе. Допустим, человек с. . .
|
Лето уходит
kumehtar 17.08.2026
|
Мысли в слух
kumehtar 17.08.2026
Забавно, насколько сейчас стала доступна информация. Например о магии, духовном развитии, медитациях, и других подобных направлениях, ранее зачастую тайных, передаваемых от учителя к ученику. Хотя. . .
|
|
Перемещение строк из ТЧ в другой документ с учетом текущего пробега
Maks 17.08.2026
Реализация из решения ниже выполнена на примере нетипового документа "Автозапчасти", с ТЧ "Шины".
За основу взят алгоритм отсюда: https:/ / www. cyberforum. ru/ blogs/ 359708/ 10838. html
Задача: . . .
|
Саморегулирующийся социальный контракт для сервера cross-section.
Hrethgir 14.08.2026
С кодом конечно таких глубоких размышлений пока не было, впрочем я уже привык к алгоритмизации. Суть предмета записи: снова в диалоге с нейросетью (я взял пока себе ник для учётки админа - Rector). . . .
|
Часы электронные
Uhbif79 12.08.2026
Выкладываю программу часов. Программа позволяет:
1. Использовать системное время и дату,
2. Есть возможность вводить время и дату вручную.
3. Реализованы 2 будильника: начало и конец рабочего дня. . . .
|
Часы с будильником на основе класса QLCDNumber
Uhbif79 12.08.2026
Всем добрый день, выкладываю программу часов с будильником на основе класса QLCDNumber.
Здесь я пробовал самостоятельно создавал классы, впервые столкнулся с видимостью переменной одного класса из. . .
|