|
Вопрощающий
|
|
Создание (+распаковка) CAB архива11.10.2009, 19:26. Показов 11897. Ответов 130
Метки cabinet.dll (Все метки)
|
|
| 11.10.2009, 19:26 | |
|
Ответы с готовыми решениями:
130
Создание архива Программное создание архива. Создание архива с паролем |
|
Вернулся
1748 / 644 / 45
Регистрация: 10.09.2021
Сообщений: 2,786
|
|
| 21.11.2024, 03:09 | |
|
testuser2, в TwinBasic будет работать без зависимостей вообще. Что касается той строчки то там это надо для функции DispCallByVtbl плюс ко всему прочему фафалон очень настаивал на том чтобы я так написал.
Добавлено через 2 минуты testuser2, ты видишь какой сумасшедший код получился) насколько много тут функций) очень долго пришлось работать над этим, пришлось разобрать всё по косточкам буквально, именно для этого модуля я кстати и интересовался темой создания потоков IStream, и как бы мне там ни советовал The Trick подключать TLB тут это не нужно совсем учитывая что мой код работает на лонгах. Добавлено через 32 секунды но зато я очень хорошо всё прокомментировал так что любой даже начинающий прогер вполне разберётся там Добавлено через 23 минуты Я только ещё пока не разобрался как сделать LZX-сжатие. Там непонятно как-то, такой константы вроде нет.
0
|
|
|
Вернулся
1748 / 644 / 45
Регистрация: 10.09.2021
Сообщений: 2,786
|
|
| 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
|
|||||||||||
|
Вернулся
1748 / 644 / 45
Регистрация: 10.09.2021
Сообщений: 2,786
|
|
| 21.11.2024, 17:29 | |
|
И как это всё чудо написать на VB6?
0
|
|
| 21.11.2024, 17:52 | |||||||||||
|
На Твин Бейсике, я думаю будет так
Добавлено через 8 минут Аналог, того что выше для Твинбейсика, но я не знаю, точно ли это должно быть так
1
|
|||||||||||
|
Вернулся
1748 / 644 / 45
Регистрация: 10.09.2021
Сообщений: 2,786
|
|||||||||||||||||
| 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
|
|||||||||||||||||
|
Вернулся
1748 / 644 / 45
Регистрация: 10.09.2021
Сообщений: 2,786
|
|
| 21.11.2024, 18:53 | |
|
Теперь я вот наконец-то достиг того о чём так мечтал! Наивысшая степень сжатия! Даже лучше чем RAR сжимает по моему. 3.6 Мб превратилось в 1.9 Мб.
0
|
|
| 21.11.2024, 18:56 | |||||||
|
Рад, что это сработало!
0
|
|||||||
|
Вернулся
1748 / 644 / 45
Регистрация: 10.09.2021
Сообщений: 2,786
|
|
| 21.11.2024, 19:01 | |
|
Странные константы у тебя, я тут посчитал на калькуляторе 0x1500 это 5376 получается, а у меня 5379 выдаёт из 21 наивысшего.
Добавлено через 1 минуту Я проверил 5376 точно не работает, а вот 5379 точно работает в коде сжатие. Добавлено через 18 секунд 0x1500 это сколько? неужели я неправильно посчитал
0
|
|
|
Вернулся
1748 / 644 / 45
Регистрация: 10.09.2021
Сообщений: 2,786
|
||||||||||||||||||||||
| 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
|
||||||||||||||||||||||
|
Вернулся
1748 / 644 / 45
Регистрация: 10.09.2021
Сообщений: 2,786
|
||||||
| 21.11.2024, 21:00 | ||||||
Сообщение было отмечено HackerVlad как решение
Решение
Новый модуль написал сегодня:
1
|
||||||
|
Вернулся
1748 / 644 / 45
Регистрация: 10.09.2021
Сообщений: 2,786
|
|
| 22.11.2024, 01:59 | |
|
testuser2, да, но я не пробовал эти квантумы...
Добавлено через 1 минуту жмёт мне кажется хуже чем LZX
0
|
|
|
Вернулся
1748 / 644 / 45
Регистрация: 10.09.2021
Сообщений: 2,786
|
|
| 22.11.2024, 02:01 | |
|
если хочешь сам попробуй
0
|
|
|
Вернулся
1748 / 644 / 45
Регистрация: 10.09.2021
Сообщений: 2,786
|
|
| 22.11.2024, 02:04 | |
|
Ну и какой их них самый лучший?
0
|
|
|
Вернулся
1748 / 644 / 45
Регистрация: 10.09.2021
Сообщений: 2,786
|
|
| 22.11.2024, 02:20 | |
|
testuser2, ну хорошо, ты попробуй свой квантум, потом скажешь как он жмёт лучше или нет
Добавлено через 1 минуту testuser2, тебе для твоего VBA7 правда придётся переписывать все API Добавлено через 46 секунд хотя в VBA7 точно фурычить не будет там же навреное не будет работать надстройка CDeckFix хотя я не пробовал
0
|
|
| 22.11.2024, 02:20 | |
|
Создание установочного архива для своих любимых программ Распаковка архива rar без сохранения файла во временную папку Создание архива с паролем средствами PB. Возможно? Создание cab архива
Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
сукцессия 6. Питон реализация энилоджиковской модели, картинка про Центральную часть будущей модели
anaschu 26.06.2026
Етить. ИИ мне на основе моего старого файла R создал вот эту вот хмерь на пайтоне.
Это уже новая модель, модель сукцессии грибной.
потоки фосфора, азота. Углерода.
5 видов организмов.
Я даже. . .
|
Как замкнутый ядерный цикл решит проблему недостатки фосфора? Био миграция фосфора со дна океана
anaschu 26.06.2026
Биологический лифт: Концепция подъема фосфора со дна океана с помощью ЗЯТЦ
Предлагаю на обсуждение альтернативу тяжелому промышленному бурению океанического дна. Вместо сложной инженерии мы можем. . .
|
сукцессия 5
anaschu 26.06.2026
ПЛАН РАЗРАБОТКИ математической модели сукцессии микоризных систем
Переход AM → EcM (Endo + ErM) · Шумилов А. С. · ИФХиБПП РАН · Пущино · 2026
. . .
|
сукцессия 4
anaschu 25.06.2026
Более детализированный план разработки
План доработки модели динамики микоризных симбиозов (EcM с гистерезисом)
Цель: Реализовать логику переключения между эрикоидным (ErM) и эктомикоризным. . .
|
|
сукцессия 3
anaschu 25.06.2026
Примерный план работ по модели
|
сукцессия 2
anaschu 25.06.2026
параметризировочная калибровочная таблица будущей модели
|
Многофункциональное здание: как одно здание порождает конфликты требований, которые никто не планировал (мат мет мод 29)
anaschu 23.06.2026
Многофункциональное здание:
как одно здание порождает конфликты требований,
которые никто не планировал
Материалы для обсуждения с МГСУ · 2026
Рисунки внутри приложенного ворд файла.
Что за. . .
|
28. Конкретное развертывание плана номер 1 из поста номер 27
anaschu 22.06.2026
Можно ли из модели получить конкретные строительные требования?
Честно — напрямую из текущей модели такие ответы не получить. Но цепочка логики есть, и она не такая длинная.
Где разрыв
. . .
|