|
Вопрощающий
|
|
Создание (+распаковка) CAB архива11.10.2009, 19:26. Показов 12866. Ответов 130
Метки cabinet.dll (Все метки)
|
|
| 11.10.2009, 19:26 | |
|
Ответы с готовыми решениями:
130
Создание архива Программное создание архива. Создание архива с паролем |
|
Вернулся
1777 / 672 / 46
Регистрация: 10.09.2021
Сообщений: 2,820
|
|
| 21.11.2024, 03:09 | |
|
testuser2, в TwinBasic будет работать без зависимостей вообще. Что касается той строчки то там это надо для функции DispCallByVtbl плюс ко всему прочему фафалон очень настаивал на том чтобы я так написал.
Добавлено через 2 минуты testuser2, ты видишь какой сумасшедший код получился) насколько много тут функций) очень долго пришлось работать над этим, пришлось разобрать всё по косточкам буквально, именно для этого модуля я кстати и интересовался темой создания потоков IStream, и как бы мне там ни советовал The Trick подключать TLB тут это не нужно совсем учитывая что мой код работает на лонгах. Добавлено через 32 секунды но зато я очень хорошо всё прокомментировал так что любой даже начинающий прогер вполне разберётся там Добавлено через 23 минуты Я только ещё пока не разобрался как сделать LZX-сжатие. Там непонятно как-то, такой константы вроде нет.
0
|
|
|
Вернулся
1777 / 672 / 46
Регистрация: 10.09.2021
Сообщений: 2,820
|
|
| 21.11.2024, 16:58 | |
|
Там есть какой-то макрос, вот он: https://learn.microsoft.com/en... mlzxwindow
Как его написать в VB6? Понятия не имею! Помогите кто знает, пожалуйста?! Там в MSDn же нет исходного кода макроса, как обычно... А как вот написать это на VB?
0
|
|
| 21.11.2024, 17:18 | |||||||||||
|
Я нашел это в заголовочнике Fci.h, как это перевести на VB х.з. Но в Твин-бейсике появились такие операторы << это, вроде, битовый сдвиг
"|" в регекспе это значит "или" Добавлено через 2 минуты из того же заголовочника
0
|
|||||||||||
|
Вернулся
1777 / 672 / 46
Регистрация: 10.09.2021
Сообщений: 2,820
|
|
| 21.11.2024, 17:29 | |
|
И как это всё чудо написать на VB6?
0
|
|
| 21.11.2024, 17:52 | |||||||||||
|
На Твин Бейсике, я думаю будет так
Добавлено через 8 минут Аналог, того что выше для Твинбейсика, но я не знаю, точно ли это должно быть так
1
|
|||||||||||
|
Вернулся
1777 / 672 / 46
Регистрация: 10.09.2021
Сообщений: 2,820
|
|||||||||||||||||
| 21.11.2024, 18:48 | |||||||||||||||||
|
Так там всё время разные значения вылетают или что? Я чё-то не понял!? Или почему это нельзя сделать константой?
Добавлено через 3 минуты В описании макроса написано "Макрос TCOMPfromLZXWindow преобразует размер окна в значение LXZTCOMP для FCIAddFile ." Вопрос: а откуда мы возьмём размер окна? И что такое окно? откуда мне взять значение w чтобы его задать, я что-то вообще не понимаю Добавлено через 6 минут Кажись нашёл описание на С++
Это значит что мне нужно указать "размер окна" (чтобы это ни значило бы) от 15 до 21 это и есть w я думаю Добавлено через 17 минут Продолжаем интересные эксперементы, итак написал я на ТвинБейсике:
Добавлено через 44 секунды Добавлено через 3 минуты testuser2, огромная благодарность тебе тогда за эту функцию на Твине, она помогла!!! Теперь я взял и просто написал 3815 в методе сжатия и вуаля! Ура! Получилось LZX сжатие 15. Добавлено через 2 минуты Как я понял, методом тыка, LZX-сжатия бывают от 15 до 21. Где 15 - это сверхбыстрое сжатие и оно как бы разбухает больше, а 21 это самое наилучшая степень сжатия и работает чуть по дольше по времени. Добавлено через 49 секунд Остаётся только вопрос почему Microsoft не сделал константы от 15 до 21, поленился? Добавлено через 29 секунд Пришлось бы наверное потому что делать 7 констант. А тут один макрос и всё вроде бы как. Добавлено через 2 минуты Наилучшая степень сжатия LZX21:
1
|
|||||||||||||||||
|
Вернулся
1777 / 672 / 46
Регистрация: 10.09.2021
Сообщений: 2,820
|
|
| 21.11.2024, 18:53 | |
|
Теперь я вот наконец-то достиг того о чём так мечтал! Наивысшая степень сжатия! Даже лучше чем RAR сжимает по моему. 3.6 Мб превратилось в 1.9 Мб.
0
|
|
| 21.11.2024, 18:56 | |||||||
|
Рад, что это сработало!
0
|
|||||||
|
Вернулся
1777 / 672 / 46
Регистрация: 10.09.2021
Сообщений: 2,820
|
|
| 21.11.2024, 19:01 | |
|
Странные константы у тебя, я тут посчитал на калькуляторе 0x1500 это 5376 получается, а у меня 5379 выдаёт из 21 наивысшего.
Добавлено через 1 минуту Я проверил 5376 точно не работает, а вот 5379 точно работает в коде сжатие. Добавлено через 18 секунд 0x1500 это сколько? неужели я неправильно посчитал
0
|
|
|
Вернулся
1777 / 672 / 46
Регистрация: 10.09.2021
Сообщений: 2,820
|
||||||||||||||||||||||
| 21.11.2024, 20:13 | ||||||||||||||||||||||
|
testuser2, ну значит 100% там ошибка! потому что 5376 не работает, я это точно проверил уже, а вот 5379 работает!
Добавлено через 2 минуты Значит твоя константа должна быть 0x1503, а не 0x1500 Добавлено через 18 секунд Так же и первая твоя константа tcompLZX_WINDOW_LO она тоже неправильная. Добавлено через 1 минуту
Добавлено через 7 минут А у них, я нашёл, вот написано вот так:
И хрен тут поймёшь вообще почему они написали 0x0F00 вместо 0x0F03 и почему они написали 0x1500 вместо 0x1503 Добавлено через 59 секунд И что такое LZX_WINDOW тоже хрен поймёшь вообще Добавлено через 2 минуты Кажись допёр! Две константы нужно соединять! То есть делать $tcompTYPE_LZX Or $tcompLZX_WINDOW_HI тогда наверное и получится заветное 0x1503, как ты думаешь? Добавлено через 6 минут Да, я только что проверил всё именно так и есть (КАК Я И ДУМАЛ):
Добавлено через 3 минуты Всегда кстати меня вымораживало почему в синтаксе для приплюсовывания соединения нужно писать Or (или) а не And (и) как казалось бы логически... Добавлено через 32 минуты В итоге я такой вот классный енум придумал:
0
|
||||||||||||||||||||||
|
Вернулся
1777 / 672 / 46
Регистрация: 10.09.2021
Сообщений: 2,820
|
||||||
| 21.11.2024, 21:00 | ||||||
Сообщение было отмечено HackerVlad как решение
Решение
Новый модуль написал сегодня:
1
|
||||||
|
Вернулся
1777 / 672 / 46
Регистрация: 10.09.2021
Сообщений: 2,820
|
|
| 22.11.2024, 01:59 | |
|
testuser2, да, но я не пробовал эти квантумы...
Добавлено через 1 минуту жмёт мне кажется хуже чем LZX
0
|
|
|
Вернулся
1777 / 672 / 46
Регистрация: 10.09.2021
Сообщений: 2,820
|
|
| 22.11.2024, 02:01 | |
|
если хочешь сам попробуй
0
|
|
|
Вернулся
1777 / 672 / 46
Регистрация: 10.09.2021
Сообщений: 2,820
|
|
| 22.11.2024, 02:04 | |
|
Ну и какой их них самый лучший?
0
|
|
|
Вернулся
1777 / 672 / 46
Регистрация: 10.09.2021
Сообщений: 2,820
|
|
| 22.11.2024, 02:20 | |
|
testuser2, ну хорошо, ты попробуй свой квантум, потом скажешь как он жмёт лучше или нет
Добавлено через 1 минуту testuser2, тебе для твоего VBA7 правда придётся переписывать все API Добавлено через 46 секунд хотя в VBA7 точно фурычить не будет там же навреное не будет работать надстройка CDeckFix хотя я не пробовал
0
|
|
| 22.11.2024, 02:20 | |
|
Создание установочного архива для своих любимых программ Распаковка архива rar без сохранения файла во временную папку Создание архива с паролем средствами PB. Возможно? Создание cab архива
Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
Программный домашний кинотеатр
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.
Опрашиваются регистры. . .
|
Hyper-V: Компьютер должен поддерживать доверенный платформенный модуль 2.0.
Maks 31.08.2026
При установке Windows 11 на виртуальную машину Hyper-V 2-го поколения вылезла такая ошибка:
Решение: в параметрах виртуальной машины, в разделе "Безопасность" (Security) активировать флаг. . .
|
Архитектура биовида Стива в Майнкрафте: Зачем бонобо кубический каннибализм
anaschu 30.08.2026
Кубический Вагинокапитализм в Minecraft: Математический инвариант ОДУ и рок Стивов-бонобо
Главная задача разработанной «Модели Всего» — наглядно продемонстрировать наличие системной «судьбы». . .
|