Проблема работы Far Manager через средства MultiArc с новым форматом архивов 7-Zip 4.59 Beta. Решение данной задачи. Проблема: Что наблюдаем - стандартным плугином MultiArc новые архивы 7z после установки 7-Zip 4.59 Beta не открываются....
[more=читать далее]
Проблема: Что наблюдаем - стандартным плугином MultiArc новые архивы 7z не открываются, хотя архиватор установлен в %WINDIR%, т.е. он в системном пути и по идее должен быть доступен.
Решения: Примечание: имена архивных файлов дистрибутива даны по странице загрузки на сайте
Download.
Все ссылки формируются динамически, поэтому качать только браузером! 1) Установка плугина 7-Zip из поставки 7-Zip 4.59 Beta (архив
7z459_extra.7z).
Достоинства: Если плугин "Включён по умолчанию" (стандартная настройка в меню конфигурации внешних модулей) архивы 7z доступны.
Недостатки: Данный плугин автоматически перехватывает все форматы распаковываемых 7-Zip файлов включая архивы RAR и файлы справки CHM. Итог система работает с файлами нормально, а Far Manager нет: в архивы RAR не возможно добавить файлы (и естественно удалить) - получаем сообщение "Операция не поддерживается", не возможно запустить файлы CHM - Far входит в них как в архивы, приходится их копировать в командную строку. Короче работать становится не удобно. А при отключении плугина 7-zip становятся не доступны архивы 7z.
2) Использование консольной версии архиватора 7-Zip - файл
7za.exe (архив
7za459.zip).
Достоинства: Всё работает, отсутствие конфликтов с плугином MultiArc и архиваторами. Нет необходимости в установке дополнительных библиотек - исполняемый файл самодостаточен.
Недостатки: На вложенных архивах выводится сообщение "Архивная операция" в начале их распаковки. Иных недостатков не обнаружено.
Изменения в настройках MultiArc: В файл <FarManagerInstallDir>\Plugins\MultiArc\Formats\custom.ini надо добавить следующие строки (не изменять, иначе не будет работать! - это экспериментально проверено на нескольких системах!). Разделитель секций (пустая строка) обязателен если данный блок не последний. После чего надо перезапустить запущенные копии Far Manager.
Добавляемый код:
Код: [7z]
TypeName=7z
ID=37 7A BC AF 27 1C
IDPos=
IDOnly=1
Extension=7z
List=7za l -- %%AQ
Start="^--"
End="^--"
Format0="yyyy tt dd hh mm ss aaaaa zzzzzzzzzzzz pppppppppppp nnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnn"
Extract=7za x {-p%%P} -r0 -y -scsDOS -- %%A @%%LQMN
ExtractWithoutPath=7z e {-p%%P} -r0 -y -scsDOS -- %%A @%%LQMN
Test=7za t {-p%%P} -r0 -scsDOS -- %%A @%%LQMN
Delete=7za d {-p%%P} -r0 -ms=off -scsDOS -- %%A @%%LQMN
Add=7za a {-p%%P} -r0 -t7z {%%S} -scsDOS -- %%A @%%LQMN
AddRecurse=7za a {-p%%P} -r0 -t7z {%%S} -scsDOS -- %%A @%%LQMN
AllFilesMask="*"
[rpm]
TypeName=rpm
ID=ED AB EE DB
IDPos=
IDOnly=1
Extension=rpm
List=7za l -- %%AQ
Start="^--"
End="^--"
Format0="yyyy tt dd hh mm ss aaaaa zzzzzzzzzzzz pppppppppppp nnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnn"
Extract=7za x {-p%%P} -r0 -y -scsDOS -- %%A @%%LQMN
ExtractWithoutPath=7za e {-p%%P} -r0 -y -scsDOS -- %%A @%%LQMN
Test=7za t {-p%%P} -r0 -scsDOS -- %%A @%%LQMN
AllFilesMask="*"
[cpio]
TypeName=cpio
ID=
IDPos=
IDOnly=0
Extension=cpio
List=7za l -- %%AQ
Start="^--"
End="^--"
Format0="yyyy tt dd hh mm ss aaaaa zzzzzzzzzzzz pppppppppppp nnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnn"
Extract=7za x {-p%%P} -r0 -y -scsDOS -- %%A @%%LQMN
ExtractWithoutPath=7z e {-p%%P} -r0 -y -scsDOS -- %%A @%%LQMN
Test=7za t {-p%%P} -r0 -scsDOS -- %%A @%%LQMN
AllFilesMask="*"
[deb]
TypeName=deb
ID=
IDPos=
IDOnly=0
Extension=deb
List=7za l -- %%AQ
Start="^--"
End="^--"
Format0="yyyy tt dd hh mm ss aaaaa zzzzzzzzzzzz pppppppppppp nnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnn"
Extract=7za x {-p%%P} -r0 -y -scsDOS -- %%A @%%LQMN
ExtractWithoutPath=7z e {-p%%P} -r0 -y -scsDOS -- %%A @%%LQMN
Test=7za t {-p%%P} -r0 -scsDOS -- %%A @%%LQMN
AllFilesMask="*"