Observer — распаковка файлов из различных контейнеров

Здесь можно обсудить ваш любимый плагин.
Ariman
Posts: 1266
Joined: Fri 30 Nov, 2007 15:32
Location: Крым
Has thanked: 12 times
Been thanked: 35 times
Contact:

Observer — распаковка файлов из различных контейнеров

Post by Ariman »

Тема для обсуждения плагина Observer.
Плагин предназначен только для распаковки файлов. Запаковка/редактирование архивов не планируется.

Хотелки/баги:

Известные проблемы:

Планируемые новые модули:

Если "ничего не работает", то прежде чем писать сюда:


Сторонние модули:
Dir — поддержка вывода команд dir и ls в качестве виртуального архива. (на версии 1.10 работать не будет в связи с изменением API модулей)
Inno Setup - поддержка файлов Inno Setup (сделан на основе innounp).

Скачать последнюю сборку
Last edited by Ariman on Tue 26 Nov, 2019 11:25, edited 1 time in total.

Ariman
Posts: 1266
Joined: Fri 30 Nov, 2007 15:32
Location: Крым
Has thanked: 12 times
Been thanked: 35 times
Contact:

Re: Observer — распаковка файлов из различных контейнеров

Post by Ariman »

Latest post of the previous page:

А такая инсталяха вообще стандартная Install Shield-овская? Или сверху какой-то левый контейнер используется. Инсталяхи IS-а с одной экзешкой и нераспаковывающиеся, которые я видел, обычно внутри msi содержат, а не cab/hdr. Все что встречались с cab/hdr внутри были обычные SFX-и от MSCab или Zip-а.

User avatar
HaRT
Moderator
Posts: 9328
Joined: Tue 30 Aug, 2005 17:21
Location: Санкт-Петербург
Has thanked: 99 times
Been thanked: 212 times

Re: Observer — распаковка файлов из различных контейнеров

Post by HaRT »

Ariman wrote:Установка стандартная - кидаем в modules и прописываем в конфиге.
А как конкретно рекомендуется его в конфиге прописывать (например, чтобы не было разнобоя в обозначениях)?
Фар есть инструмент, а не нянька. © 2009 DrKnS

Ariman
Posts: 1266
Joined: Fri 30 Nov, 2007 15:32
Location: Крым
Has thanked: 12 times
Been thanked: 35 times
Contact:

Re: Observer — распаковка файлов из различных контейнеров

Post by Ariman »

HaRT wrote:А как конкретно рекомендуется его в конфиге прописывать (например, чтобы не было разнобоя в обозначениях)?
В смысле? Какое имя модуля выбирать?

User avatar
HaRT
Moderator
Posts: 9328
Joined: Tue 30 Aug, 2005 17:21
Location: Санкт-Петербург
Has thanked: 99 times
Been thanked: 212 times

Re: Observer — распаковка файлов из различных контейнеров

Post by HaRT »

Ariman wrote:
HaRT wrote:А как конкретно рекомендуется его в конфиге прописывать (например, чтобы не было разнобоя в обозначениях)?
В смысле? Какое имя модуля выбирать?
В большей степени интересно, какие фильтры имеет смысл назначить. Ну и есть ли у этого модуля какие-то свои настройки.

А также интересно, что этот модуль умеет вытаскивать из CABов, чего, скажем 7-Zip, не умеет… Или у InstallShieldа какие-то свои особенные CABы?
Фар есть инструмент, а не нянька. © 2009 DrKnS

Ariman
Posts: 1266
Joined: Fri 30 Nov, 2007 15:32
Location: Крым
Has thanked: 12 times
Been thanked: 35 times
Contact:

Re: Observer — распаковка файлов из различных контейнеров

Post by Ariman »

HaRT wrote:В большей степени интересно, какие фильтры имеет смысл назначить. Ну и есть ли у этого модуля какие-то свои настройки.
Специфических настроек никаких нет. Фильтр самый оптимальный - *.hdr;*.cab.
HaRT wrote:А также интересно, что этот модуль умеет вытаскивать из CABов, чего, скажем 7-Zip, не умеет… Или у InstallShieldа какие-то свои особенные CABы?
7zip умеет открывать MSCab. Там общее только расширение. Это свои особенные cab-ы. :)

User avatar
HaRT
Moderator
Posts: 9328
Joined: Tue 30 Aug, 2005 17:21
Location: Санкт-Петербург
Has thanked: 99 times
Been thanked: 212 times

Re: Observer — распаковка файлов из различных контейнеров

Post by HaRT »

Ага, ясно.
То-то, гляжу, новый модуль не входит в CABы (sup_pro.cab, sup_srv.cab, support.cab) из Windows Server 2003 Service Pack 1 32-bit Support Tools.
Фар есть инструмент, а не нянька. © 2009 DrKnS

User avatar
John Doe
Бюрократ
Posts: 12716
Joined: Wed 27 Apr, 2005 20:42
Has thanked: 36 times
Been thanked: 279 times

Re: Observer — распаковка файлов из различных контейнеров

Post by John Doe »

Если в дистрибутиве IS присутствуют файлы *.hdr, то входить надо именно в них (а не в *.cab)


User avatar
John Doe
Бюрократ
Posts: 12716
Joined: Wed 27 Apr, 2005 20:42
Has thanked: 36 times
Been thanked: 279 times

Re: Observer — распаковка файлов из различных контейнеров

Post by John Doe »

Ariman wrote:Все что встречались с cab/hdr внутри были обычные SFX-и от MSCab или Zip-а.
Встречается всякое, например
http://exelab.ru/f/index.php?action=vthread&forum=2&topic=18282#18 wrote:Аналогично, имею инсталлятор на InstallShield 17 - никак не мону вскрыть. Выдергиванием файлов из temp'а - имею только data1.cab и hdr. Если попытаться извлечь файл при помощи свежего (ИС19) IsCabView.exe - получаю ошибку an error occured extracting the file. please verify all setup cab files are present n the source folder. Я так понимаю что не хватает data2.cab? но распаковать исходный sfx exe не получается доступными утилитами, и декомпилировать setup.inx - тоже - sid в процессе декомпиляции вылетает с ошибкой примерно на середине файла (так подозреваю что в свежем инсталшилде в скриптах есть какие то новые инструкции, котоыре sid не умеет расшифровывать. Помогите, пожалуйста.
SaniaNET

...

Мучался неделю, а как стоило сюда написать - решение нашлось через 15 минут. Опишу может кому пригодится:
1. вынимаем оверлей из исходного sfx exe, например програмулей Exeinfo PE 0.0.3.2
2. скриптом is_type2u.bms отсюда http://www.forum.ctpax-x.ru/index.php?s ... ost&p=3026 распаковываем оверлей и получаем заветный data2.cab
3. Ну тут уже или IsCabView.exe или другими утилитами выдергиваем из архивов все что нужно

Ariman
Posts: 1266
Joined: Fri 30 Nov, 2007 15:32
Location: Крым
Has thanked: 12 times
Been thanked: 35 times
Contact:

Re: Observer — распаковка файлов из различных контейнеров

Post by Ariman »

John Doe wrote:Встречается всякое, например
Хм. Надо изучить.

2tstr
Можешь скинуть пример файлика с оверлеем? Попробую его поковырять, раз, вроде как, есть методы распаковки.

tstr
Posts: 534
Joined: Thu 16 Apr, 2009 16:15
Has thanked: 9 times
Been thanked: 9 times

Re: Observer — распаковка файлов из различных контейнеров

Post by tstr »

2. скриптом is_type2u.bms отсюда http://www.forum.ctpax-x.ru/index.php?s ... ost&p=3026 распаковываем оверлей и получаем заветный data2.cab
да, так руками и делал.

Ariman:
подберу несколько примеров, постараюсь найти не полностью распаковывающийся, до конца дня отправлю.

tstr
Posts: 534
Joined: Thu 16 Apr, 2009 16:15
Has thanked: 9 times
Been thanked: 9 times

Re: Observer — распаковка файлов из различных контейнеров

Post by tstr »

возьмём для примера файл инсталлятора, подготовленного InstallShield 11

если его запустить, то он распакует во временную директорию
заметим, что присутствуют файлы data1.cab , data1.hdr (открывается Observer-ом). листинг файла data1.hdr получаем, файлы распаковываются не все -
data2.cab не разворачивается, хотя содержится (0x094895 - начало заголовка, 0x0948B7 - его десятичная длина в байтах (3649860), сам файл со смещения 0x0948BF).

если взглянуть на asmssrvr.exe, то оверлеем, сразу за окончанием pe файла, со смещением 0x01C200 начинается контейнер InstallShield-а, структуры очевидно очень простые: имя, полное имя, версия, размер, файл. всё разделено 0х00, после содержимого файла перед следующей структурой-заголовком разделителя нет.

ещё попалась инсталляха (InstallShield v16.0), на .hdr которой падаем (не зависит от наличия .cab)

Ariman
Posts: 1266
Joined: Fri 30 Nov, 2007 15:32
Location: Крым
Has thanked: 12 times
Been thanked: 35 times
Contact:

Re: Observer — распаковка файлов из различных контейнеров

Post by Ariman »

tstr wrote:ещё попалась инсталляха (InstallShield v16.0), на .hdr которой падаем (не зависит от наличия .cab)
Исправил. Юникодные архивы оказывается с 17 версии начались, а не с 16.
Attachments
ishield_x64_fix2.rar
(25.52 KiB) Downloaded 113 times
ishield_x86_fix2.rar
(20.77 KiB) Downloaded 138 times

Ariman
Posts: 1266
Joined: Fri 30 Nov, 2007 15:32
Location: Крым
Has thanked: 12 times
Been thanked: 35 times
Contact:

Re: Observer — распаковка файлов из различных контейнеров

Post by Ariman »

tstr wrote:да, так руками и делал.
Кстати, есть такая тулза IsXunpack. Она распаковывает подобные инсталяхи (не совсем все, но все же лучше чем руками :)).

User avatar
HaRT
Moderator
Posts: 9328
Joined: Tue 30 Aug, 2005 17:21
Location: Санкт-Петербург
Has thanked: 99 times
Been thanked: 212 times

Re: Observer — распаковка файлов из различных контейнеров

Post by HaRT »

Ariman wrote:Кстати, есть такая тулза IsXunpack. Она распаковывает подобные инсталяхи (не совсем все, но все же лучше чем руками :)).
А где её берут? На ExeTools только от 2004-ого года и только с регистрацией по приглашению… На файлообменниках что-то везде удалено. Она что ли проприетарная?
Фар есть инструмент, а не нянька. © 2009 DrKnS

Ariman
Posts: 1266
Joined: Fri 30 Nov, 2007 15:32
Location: Крым
Has thanked: 12 times
Been thanked: 35 times
Contact:

Re: Observer — распаковка файлов из различных контейнеров

Post by Ariman »

Да, тулза далеко не самая свежая. А взять можно, например, из Universal Extractor-а, внутри валяется.

User avatar
John Doe
Бюрократ
Posts: 12716
Joined: Wed 27 Apr, 2005 20:42
Has thanked: 36 times
Been thanked: 279 times

Re: Observer — распаковка файлов из различных контейнеров

Post by John Doe »

В реальности эта тулза крайне мало чего может распаковать, поэтому практически бесполезна.

P.S.
Если верит гуглу, то взять можно здесь: ftp://ftp.unitrends.com/outgoing/fmaggi ... unpack.exe

Post Reply

Return to “Обсуждение плагинов”