Ru-Board.club
← Вернуться в раздел «Программы»

» 7-Zip / 7z (часть 2)

Автор: sabio
Дата сообщения: 14.12.2009 14:09
DimmY
CRANK

Цитата:
Выходит, и правда this is by design. К сожалению.

у меня вот была мысль попроовать поискать и удалить dll-ку с "форматом" экзешников
к сожалению, нет установленного 7-zip под рукой, чтобы проверить
но помнится, все "внешние" форматы там были в папке а-ля formats в dll-ках - может, и от экзешников его можно будет так отучить?
Автор: PAQer
Дата сообщения: 14.12.2009 16:01
CRANK
ты даже со второго раза не допёр, о чём речь. Я написал что проблемы нет, нужно лишь два раза кликнуть чтобы попасть в сам архив. Да и кстати озвучь тогда смысл ПРОБЛЕМЫ. Если таковая имеется.
Автор: Barabashka
Дата сообщения: 14.12.2009 16:08
2 All
Подтверждаю, способ PAQer работает!
Автор: ru1956
Дата сообщения: 14.12.2009 16:40
Barabashka

Цитата:
Подтверждаю, способ PAQer работает!

Конкретнее, по шагам...
Автор: Alex1985
Дата сообщения: 14.12.2009 20:59
пытаюсь упаковать папку с кол-вом файлов 77354 штуки и весом 2,05 гига.
файло упаковывается 7z.exe из релиза 4.65

Цитата:
7z a -mx -ms=50g -md=128m -mfb=273

в конце упаковки (при добавлении последнего файла?) 7z говорит

Цитата:
Can't allocate required memory

ну и на этом всё заканчивается.
5 гиговый файл упаковывается нормально. да и вообще таким способом не 1 сотня архивов упакована и всегда без проблем.
куда копать, чего крутить?
Автор: Bulat_Ziganshin
Дата сообщения: 14.12.2009 21:07
Alex1985
то что раньше было хорошо - не гарантия. для 128-мегового словаря нужно 1.5 гига памяти, для 77 тыщ файлов - порядка 100 мегабайт. плюс фрагментация
варианты:
1. -md96m
2. оптимизировать dll-ки, как описано в статье Егора
Автор: Alex1985
Дата сообщения: 14.12.2009 21:20
у меня 2 гига памяти.
файл весом в 5 гиг упаковывается с этими параметрами без ошибок.
да, при упаковке этих 77 тысяч файлов памяти потребляется порядка 1,5 гиг. ещё и свопа остаётся 2 гига. так чего же ему не хватает?

пойду тестить gui, консольную с -md96m и последнюю консольную бетку. отпишусь потом.
Автор: Bulat_Ziganshin
Дата сообщения: 14.12.2009 21:23
Alex1985
а ты не поленись прочти статью Егора
Автор: Barabashka
Дата сообщения: 14.12.2009 21:24
ru1956
Открываешь exe-шник в 7zip - видишь кучу хрени (PE), делаешь дабл клик по самой большой хрени - вуаля, архив открыт!

Или есть пример, который открывается в 4.65 (4.66) и не открывается в 9.09?

Но, согласен, сделано плохо - никто в здравом уме, допереть до этого не может.
К разработчикам просьба переделать.
Автор: ru1956
Дата сообщения: 14.12.2009 21:50
Barabashka

Цитата:
никто в здравом уме, допереть до этого не может.

Все как то через жжж...
Мож эти ребята какую особую траву стали курить, раз такие фичи вытворяют?
Воистину, пути господни неисповедимы...
Автор: CRANK
Дата сообщения: 15.12.2009 01:03
Barabashka

Цитата:
Или есть пример

Ставлю 7-Zip 9.04 Beta, открываю файл "Windows7-USB-DVD-tool.ехе", получаю: .
Ставлю 7-Zip 9.09 Beta, открываю файл "Windows7-USB-DVD-tool.ехе", получаю: .
Вопрос: как в 7-Zip 9.09 Beta увидеть и извлечь три файла, которые видно на первой картинке?
Автор: egor23
Дата сообщения: 15.12.2009 01:12
CRANK

Цитата:
Вопрос: как в 7-Zip 9.09 Beta увидеть и извлечь три файла, которые видно на первой картинке?

Windows7-USB-DVD-tool.exe\.rsrc\RCDATA\CABINET\
Автор: CRANK
Дата сообщения: 15.12.2009 01:36
egor23

Цитата:
\.rsrc\RCDATA\CABINET\

Теперь смысл ясен, добраться можно, но через "заднее" место.
Автор: GORA2
Дата сообщения: 15.12.2009 09:38

Цитата:
Цитата:Вопрос: как в 7-Zip 9.09 Beta увидеть и извлечь три файла, которые видно на первой картинке?

Windows7-USB-DVD-tool.exe\.rsrc\RCDATA\CABINET\

Несколько изменю вопрос. Как извлечь эти файлы в версии >9.04 из командной строки?
Автор: shadow_member
Дата сообщения: 15.12.2009 10:48
Как можно изменить иконку ассоциированного с 7-Zip архива на более современную и установить ее "по умолчанию", кроме как с 7-Zip Theme Manager?
Уже понял, что другим способом лучше не заморачиваться.
Автор: egor23
Дата сообщения: 15.12.2009 11:47
GORA2

Цитата:
Несколько изменю вопрос. Как извлечь эти файлы в версии >9.04 из командной строки?

скорее всего без временного файла не получится
нужно просить автора расширить поддержку stdin
и\или логику работы 7z (добавив дополнительные ключи)

Добавлено:
(7z x Windows7-USB-DVD-tool.exe -ir!CABINET -so>temp) & (7z x temp -oWindows7-USB-DVD-tool\) & (del temp)

Добавлено:
7z x Windows7-USB-DVD-tool.exe -ir!CABINET -so > temp
7z x temp -oWindows7-USB-DVD-tool\
del temp
Автор: GORA2
Дата сообщения: 15.12.2009 12:45
egor23

Цитата:
скорее всего без временного файла не получится

Пусть будут временные файлы, пусть будет батник, но меня интересует не конкретно этот файл, а единый способ извлечения без использование FM в архиваторе версии >9.04. Т.к. место "залегания" нужных файлов может разниться в разных exe файлах.
Автор: egor23
Дата сообщения: 15.12.2009 13:16
GORA2

Цитата:
меня интересует не конкретно этот файл, а единый способ извлечения без использование FM в архиваторе версии >9.04. Т.к. место "залегания" нужных файлов может разниться в разных exe файлах.

единого способа нет, и врядли будет (но никто не мешает спросить у разработчика)
всё "стандартизовано" - 7-Zip.PE
1. в иснталлах может быть больше одного "архива" с данными (VirtualBox)
2. в разных инсталах по разному называются "архивы" с данными \ по разным путям лежат.
Автор: GORA2
Дата сообщения: 15.12.2009 13:31
egor23
Я уже спрашивал его на форуме, но его ответ меня не удовлетворил. Приходится пользоваться файлами от двух архиваторов (9.04 и 9.new).
Автор: egor23
Дата сообщения: 15.12.2009 14:05
Alex1985

Цитата:
пытаюсь упаковать папку с кол-вом файлов 77354 штуки и весом 2,05 гига.
файло упаковывается 7z.exe из релиза 4.65

Цитата: 7z a -mx -ms=50g -md=128m -mfb=273

в конце упаковки (при добавлении последнего файла?) 7z говорит

Цитата:
Can't allocate required memory
    
ну и на этом всё заканчивается.
Автор: Alex1985
Дата сообщения: 16.12.2009 12:08
egor23

Цитата:
так что выложите файл VMMap (Сохранить как...) процесса 7z

http://multi-up.com/187010
7z_1.mmp - начало упаковки.
7z_2.mmp - конец упаковки.
упаковываю файлы из 6 ссылок в шапке http://forum.ru-board.com/topic.cgi?forum=35&topic=10220

а вот тестовый набор из 100000 файлов упаковался нормально. но и потребление памяти было мизерным

Автор: egor23
Дата сообщения: 16.12.2009 12:46
Alex1985

Цитата:
упаковываю файлы из 6 ссылок

подразумевалось, что будет набор данных, на котором вывалевается 7-Zip
и картинку Process Explorer процесса 7z тоже неплохо было бы приложить (вкладка Performance \ Performance Graph) скрины делать до вылета и после того как вылетит 7z

Цитата:
в конце упаковки (при добавлении последнего файла?)

при добавлении последнего файла, или после того как добавился, и началось создании "каталога архива (спимок файлов и т.п.)"?

1. более новые версии тоже вылетают?
Повторное сжатие на 4.65 тоже вылетело?

2. Посмотрите что будет если создать архив 7z без сжатия?

PS1: Речь идёт о сбойном наборе данных

Цитата:
а вот тестовый набор из 100000 файлов упаковался нормально. но и потребление памяти было мизерным

100 000 файлов были нужны для кол-ва файлов
а набор был - 100 000 + 1файл(130МБ)
это всего лишь была симуляция..., а реальность она всегда интересней.
Автор: egor23
Дата сообщения: 16.12.2009 17:55
Alex1985

Цитата:
файлы из 6 ссылок


Цитата:
2. Посмотрите что будет если создать архив 7z без сжатия?

7z 4.65
7z a -mx0
посмотрел у себя не валится 7z

7z a -mx -ms=50g -md=128m -mfb=273
поставил на упаковку позже отпишусь о результате
Автор: Alex1985
Дата сообщения: 16.12.2009 19:11
egor23

Цитата:
подразумевалось, что будет набор данных, на котором вывалевается 7-Zip

так и есть. распаковал архивы что по ссылкам, там многотомовый архив. распаковал и его, получил 77354 файла

Цитата:
и картинку Process Explorer процесса 7z тоже неплохо было бы приложить (вкладка Performance \ Performance Graph) скрины делать до вылета и после того как вылетит 7z

перед

после


Цитата:
при добавлении последнего файла, или после того как добавился, и началось создании "каталога архива (спимок файлов и т.п.)"?

а кто ж его знает вот лог.

Цитата:
Compressing Fonts\Licensed.FNT\PARATYPE\PARATYPE.PT\PS\TURKISH.148\ITCZPCHA.001\ZPF56__T.pfm
Compressing Font Expert 2007\AfmToPfmSetup.exe 99%

ERROR: Can't allocate required memory!


Цитата:
1. более новые версии тоже вылетают?
Повторное сжатие на 4.65 тоже вылетело?

да. тестил 4.65 gui и консольную версии. вылетают обе. gui правда в большинстве случаев вылетает в начале упаковки, консольная строго при добавлении последнего файла. бетку 9.09 консольную тоже пробовал, вылетает.

Цитата:
2. Посмотрите что будет если создать архив 7z без сжатия?

будет всё ок. c -md=96m тоже упаковывает нормально.
Автор: egor23
Дата сообщения: 16.12.2009 23:35
Alex1985

Цитата:
поставил на упаковку позже отпишусь о результате

тоже падает

Цитата:
а кто ж его знает вот лог.

Цитата: Compressing Fonts\Licensed.FNT\PARATYPE\PARATYPE.PT\PS\TURKISH.148\ITCZPCHA.001\ZPF56__T.pfm
Compressing Font Expert 2007\AfmToPfmSetup.exe 99%

ERROR: Can't allocate required memory!
Автор: Bulat_Ziganshin
Дата сообщения: 16.12.2009 23:41
да что ж тут непонятного? для сжатия exe требуется больше памяти, поскольку есть ещё и bcj. отключи его (-mce что ли) - будет ок
Автор: egor23
Дата сообщения: 16.12.2009 23:43
Bulat_Ziganshin

Цитата:
да что ж тут непонятного? для сжатия exe требуется больше памяти, поскольку есть ещё и bcj. отключи его (-mce что ли) - будет ок

блок данных всего 9.4МБ

Добавлено:
и проблема тупо не локализуется...
Автор: Bulat_Ziganshin
Дата сообщения: 16.12.2009 23:51

Цитата:
блок данных всего 9.4МБ

это fa уменьшает при этом словарь до 9 мб. а 7-zip ограничивает словарь только общим объёмом всех файлов. зато при этом lzma аллоцирует память только один раз, а не перед каждым солид-блоком
Автор: egor23
Дата сообщения: 17.12.2009 00:06

Цитата:
7-zip ограничивает словарь только общим объёмом всех файлов.

н-да уж только сейчас обратил внимание на exe - BCJ2 LZMA:27 LZMA:20 LZMA:20
(это удачный исход был на Win64 7z 32bit VAS 4ГБ)

Цитата:
ато при этом lzma аллоцирует память только один раз

ну так чего 7z валится если выделено и больше "не выделяется"
Автор: Bulat_Ziganshin
Дата сообщения: 17.12.2009 00:14

Цитата:
ну так чего 7z валится если выделено и больше "не выделяется"

lzma выделяет память перед первым блоком. bcj - перед вторым. там алгоритм такой - память возвращается только по окончании всей команды, память выделенная lzma в самом начале используется и при обработке второго блока

Страницы: 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135

Предыдущая тема: RDM+, TSMobiles и VNC+


Форум Ru-Board.club — поднят 15-09-2016 числа. Цель - сохранить наследие старого Ru-Board, истории становления российского интернета. Сделано для людей.