MultiArc: Archive support plugin — Модуль работы с архивами

Здесь можно обсудить ваш любимый плагин.
lev0tsk
Posts: 14
Joined: Fri 14 Dec, 2012 10:52

MultiArc: Archive support plugin — Модуль работы с архивами

Post by lev0tsk » Mon 18 Jun, 2018 11:19

Latest post of the previous page:

starter wrote:
Sun 17 Jun, 2018 14:41
Надо бы обновить command lines для 7zip.
Это мне ответ был?
Если мне, то при чем тут 7zip? Для zip используется pkzipc ( v.8 ), для RAR - winrar (консольный) и т.д..... А функция тестирования архивов не работает для всех типов архивов!..((( Вообще не работает, не дает даже окно выбора команд.
Last edited by lev0tsk on Mon 18 Jun, 2018 11:20, edited 1 time in total.

User avatar
DrKnS
Posts: 5008
Joined: Thu 04 Aug, 2005 06:44
Location: Kyiv
Has thanked: 4 times
Been thanked: 167 times

MultiArc: Archive support plugin — Модуль работы с архивами

Post by DrKnS » Mon 18 Jun, 2018 13:08

lev0tsk wrote:
Sat 16 Jun, 2018 08:56
Что могло произойти между тем когда работало и когда перестало
Вы установили какую-то программу, глобально перехватывающую Shift+F3.

lev0tsk
Posts: 14
Joined: Fri 14 Dec, 2012 10:52

MultiArc: Archive support plugin — Модуль работы с архивами

Post by lev0tsk » Mon 18 Jun, 2018 16:18

DrKnS wrote:
Mon 18 Jun, 2018 13:08
Вы установили какую-то программу, глобально перехватывающую Shift+F3.
Попробовал в Far'e 3.xx - работает, в пустом 1.75 x64 (только с MultiArc'ом) тоже работает...
Видимо пересечка с каким-то плагином в самом 1.75...(((

lev0tsk
Posts: 14
Joined: Fri 14 Dec, 2012 10:52

MultiArc: Archive support plugin — Модуль работы с архивами

Post by lev0tsk » Tue 19 Jun, 2018 07:19

starter wrote:
Sun 17 Jun, 2018 14:41
Надо бы обновить command lines для 7zip.
Начиная с v17, filelist должен передаваться в
Начиная с v17 - версии чего? Кстати, обновление command lines для 7zip ни на что не повлияло, по крайней мере я не заметил...

А так, хм... Действительно, методом тыка определен виновник "торжества" - это плагин 7ZIP, при его отключении/удалении "тест архивов" начинает работать! Но... естественно, перестают распаковываться 7-z архивы (открываются пустые) (((
Дальнейшие изыскания выявили конкретного виновника - это как-раз вот эта dll-ка "Copy 7z.dll from 7-Zip distributive to plugin folder" (readme.txt), при удалении 7z.dll всё работает (даже при включенном плагине 7ZIP), но не распаковываются 7z архивы, при наличии 7z.dll "тест архивов" перестает работать, но начинают распаковываться 7z архивы... Вот такая фигня...((( И как её победить?

User avatar
DrKnS
Posts: 5008
Joined: Thu 04 Aug, 2005 06:44
Location: Kyiv
Has thanked: 4 times
Been thanked: 167 times

MultiArc: Archive support plugin — Модуль работы с архивами

Post by DrKnS » Tue 19 Jun, 2018 12:54

lev0tsk wrote:
Tue 19 Jun, 2018 07:19
Кстати, обновление command lines для 7zip ни на что не повлияло, по крайней мере я не заметил...
Это не вам.
И как её победить?
Настроить открытие 7z через multiarc или переименовать 7-ZipFar.dll в z7-ZipFar.dll

lev0tsk
Posts: 14
Joined: Fri 14 Dec, 2012 10:52

MultiArc: Archive support plugin — Модуль работы с архивами

Post by lev0tsk » Tue 19 Jun, 2018 14:20

DrKnS wrote:
Tue 19 Jun, 2018 12:54
Настроить открытие 7z через multiarc или переименовать 7-ZipFar.dll в z7-ZipFar.dll
Спасибо. Пока сделал через multiarc, а потом видно будет......

User avatar
CyBear
Posts: 16
Joined: Thu 02 Dec, 2010 05:46
Location: Братск
Has thanked: 5 times
Contact:

MultiArc: Archive support plugin — Модуль работы с архивами

Post by CyBear » Thu 27 Sep, 2018 11:05

Здравствуйте.

Задача:
Настраиваем custom.ini для обработки *.RAR и *.ARJ через custom.fmt и без rar.fmt и без arj.fmt.

Результат:
Всё настроил, протестировал, работают все операции, кроме распаковки и входа внутрь архива по ENTER (или в консоли ma:имя.rar)

Проблема:
Прошу помочь определить переменные Start=, End= и Format0= в custom.ini для *.RAR и *.ARJ, чтобы можно было заходить в архив и распаковывать его.

Описание:
Перерыл сотни сообщений на форумах TC, MA и FAR, пересмотрел и опробовал десятки конфигов в custom.ini и уже отчаялся, поэтому пишу здесь, возможно кто-то из Вас, уважаемые форумчане и разработчики, сможете мне помочь.

Я делаю "портативную сборку" FAR (3.0 build 5273 x86) и в Far.exe.ini прописываю:

Code: Select all

[General]
UseSystemProfiles=0
UserProfileDir=%FARHOME%\Profile
UserLocalProfileDir=%FARHOME%\Profile
TemplateProfile=%FARHOME%\Profile\Default.farconfig
GlobalUserMenuDir=%FARHOME%\Profile
DefaultLanguage=Russian
Эта "портативная cборка" представляет из себя стабильную сборку с официального сайта FAR, где в каталоге %FARHOME%\Ware "прикручены" скрипты и рабочие программы, и далее сборка распространяется по всем подсетям и доменам предприятия, где пользователи уже работают с тем или иным ПО, в том числе с архивами *.RAR и *.ARJ.

Хочу объяснить почему мы сознательно не используем rar.fmt и удаляем его из %farhome%\Plugins\MultiArc\Formats\.
Дело в том, что rar.fmt (arj.fmt) будет брать настройки из реестра HKEY_CURRENT_USER\Software\Far Manager\Plugins\MultiArc\RAR, а не из %farhome%\Plugins\MultiArc\Formats\custom.ini, что нам не подходит.

Мы как раз и настраиваем %farhome%\Plugins\MultiArc\Formats\custom.ini для работы с *.RAR, вот рабочий код:

Code: Select all

[RAR]
TypeName=RAR
ID=52 61 72 21
IDOnly=0
Extension=rar
List="%farhome%\Ware\ARC\RAR\rar.exe l -- {-p%W} %AQ"
;Распаковка
Extract="%farhome%\Ware\ARC\RAR\rar.exe x {-p%%P} {-ap%%R} -kb {%%S} -- %%A @%%LNMA"
;Распаковка без путей
ExtractWithoutPath="%farhome%\Ware\ARC\RAR\rar.exe e {-p%%P} -kb {%%S} -- %%A @%%LNMA"
;Тестирование
Test="%farhome%\Ware\ARC\RAR\rar.exe t {-p%%P} -- %%A"
;Удаление
Delete="%farhome%\Ware\ARC\RAR\rar.exe d -k -m5 -mcacdeit -mdg -rr0p -s -t {-w%%W} -- %%A @%%LNMA"
;Архивный комментарий
Comment="%farhome%\Ware\ARC\RAR\rar.exe c -k -m5 -mcacdeit -mdg -rr0p -s -t {-w%%W} -- %%A"
;Файловый комментарий
CommentFiles="%farhome%\Ware\ARC\RAR\rar.exe cf -k -m5 -mcacdeit -mdg -rr0p -s -t {-w%%W} -- %%A @%%LNMA"
;Преобразование в SFX
SFX="%farhome%\Ware\ARC\RAR\rar.exe s -k -m5 -mcacdeit -mdg -rr0p -s -t -- %%A"
;Запрет модификации
Lock="%farhome%\Ware\ARC\RAR\rar.exe k -m5 -mcacdeit -mdg -rr0p -s -t -- %%A"
;Запрет модификации
Protect="%farhome%\Ware\ARC\RAR\rar.exe rr -k -m5 -mcacdeit -mdg -s -t -- %%A"
;Восстановление архива
Recover="%farhome%\Ware\ARC\RAR\rar.exe r -k -m5 -mcacdeit -mdg -rr0p -s -t -- %%A"
;Добавление файлов
Add="%farhome%\Ware\ARC\RAR\rar.exe a -k -m5 -mcacdeit -mdg -rr0p -s -t {-p%%P} {-ap%%R} {-w%%W} {%%S} -- %%A @%%LNMA"
;Перенос файлов
Move="%farhome%\Ware\ARC\RAR\rar.exe m -k -m5 -mcacdeit -mdg -rr0p -s -t {-p%%P} {-ap%%R} {-w%%W} {%%S} -- %%A @%%LNMA"
;Добавл. файлов и папок
AddRecurse="%farhome%\Ware\ARC\RAR\rar.exe a -r0 -k -m5 -mcacdeit -mdg -rr0p -s -t {-p%%P} {-ap%%R} {-w%%W} {%%S} -- %%A @%%LNMA"
;Перенос файлов и папок
MoveRecurse="%farhome%\Ware\ARC\RAR\rar.exe m -r0 -k -m5 -mcacdeit -mdg -rr0p -s -t {-p%%P} {-ap%%R} {-w%%W} {%%S} -- %%A @%%LNMA"
AllFilesMask="*.*"
Все операции с каталогами и файлами доступны и работают - мы можем заархивировать, сделать SFX архив, перенести в архив с удалением и т.п.,

Но проблема теперь в том, что мы не можем зайти по ENTER в архив или распаковать его!

Методом поиска причины, пришёл к выводу что требуется указать в custom.ini переменные, что-то вроде такого вида (взято с форума TC):

Для RAR4x код (взято с форума TC):

Code: Select all

Start=^-----------
End=^-----------
Format0=?nnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnn
Format1=zzzzzzzzzzzzzzzzzzzzzz pppppppp      dd-tt-yy hh:mm  aaaaaaa
Для RAR5x код (взято с форума TC):

Code: Select all

Start=^-----------
End=^-----------
Format0=?aaaaaaaaaa $z+  yyyy tt dd hh:mm  n+
Я перепробовал эти и многие другие значение - ни одно не подошло...

Аналогичная проблема с архивами *.ARJ, но немного иного толка - в архив по ENTER проваливаешься, но видишь там только часть файлов, тогда как ArcLite показывает все файлы, вот код custom.ini для *.ARJ:

Code: Select all

[arj]
TypeName=arj
IDOnly=0
Extension=arj
List="%farhome%\Ware\ARC\arj32.exe v -- %%A"
Start=^------------
End=^------------
Format0=* nnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnn
Format1=???????????? zzzzzzzzzz pppppppppp       yy-tt-dd hh:mm:ss          aaaaaa
Format2=?
Format3=?
Extract="%farhome%\Ware\ARC\arj32.exe x -+ {-g%%P} -v -p1 -hf2 -- %%A !%%LM"
ExtractWithoutPath="%farhome%\Ware\ARC\arj32.exe e -+ {-g%%P} -v -p1 -hf2 -- %%A !%%LM"
Test="%farhome%\Ware\ARC\arj32.exe t -+ {-g%%P} -v -p1 -- %%A"
Delete="%farhome%\Ware\ARC\arj32.exe d -+ {-w%%W} -p1 -- %%A !%%LM"
Add="%farhome%\Ware\ARC\arj32.exe a -+ -a1 {-g%%P} {-w%%W} -p -- %%A !%%LM"
AddRecurse="%farhome%\Ware\ARC\arj32.exe a -+ -r -a1 {-g%%P} {-w%%W} -p -- %%A !%%LM"
Move="%farhome%\Ware\ARC\arj32.exe m -+ -a1 {-g%%P} {-w%%W} -p -- %%A !%%LM"
MoveRecurse="%farhome%\Ware\ARC\arj32.exe m -+ -r -a1 {-g%%P} {-w%%W} -p -- %%A !%%LM"
Comment="%farhome%\Ware\ARC\arj32.exe c -+ {-w%%W} -z -- %%A"
CommentFiles="%farhome%\Ware\ARC\arj32.exe c -+ {-w%%W} -p1 -- %%A !%%LM"
SFX="%farhome%\Ware\ARC\arj32.exe y -+ -je -p %%A"
Protect="%farhome%\Ware\ARC\arj32.exe t -+ -a1 -y {-g%%P} {-w%%W} -hk -p {%%S} -- %%a"
Recover="%farhome%\Ware\ARC\arj32.exe x -+ -a1 {-g%%P} {-w%%W} -jr -p {%%S} -- %%a !%%LM"
AllFilesMask="*"
Предупрежу вопрос, мол почему не использовать ArcLite - использую! Всегда и везде и доволен и всем рекомендую! Но есть ситуации когда необходимо вручную создавать именно архиваторами RAR.EXE и ARJ32.EXE файлы соответствующих форматов - это требования нормативных актов, и скриптами этом не всегда удобно и возможно, требуется именно из панели интерфейса FAR.

Все конфиги и настройки рисовал сам, немного в проблематике разбираюсь, но как оказалось недостаточно...

Пожалуйста, кто в этом хорошо понимает и разбирается, помогите составить значения этих трёх переменных Start=, End= и Format0= в custom.ini для *.RAR RAR 5.61 x86 и *.ARJ ARJ32 3.20 x86, чтобы можно было полноценно работать с архивами через MultiArc.

Спасибо.

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

MultiArc: Archive support plugin — Модуль работы с архивами

Post by HaRT » Thu 27 Sep, 2018 11:44

CyBear wrote:
Thu 27 Sep, 2018 11:05
Прошу помочь определить переменные Start=, End= и Format0= в custom.ini для *.RAR и *.ARJ, чтобы можно было заходить в архив и распаковывать его.
Усвоили ли вы документацию по интересующим вас параметрам? Её можно найти, например, в большом комментарии в начале файла custom.ini из комплекта поставки Far 1.75 (Site | загрузить | Полное собрание сочинений).
CyBear wrote:
Thu 27 Sep, 2018 11:05
rar.fmt (arj.fmt) будет брать настройки из реестра HKEY_CURRENT_USER\Software\Far Manager\Plugins\MultiArc\RAR
Если там ничего нет, будут использоваться настройки по умолчанию, которые вроде бы вполне работоспособны. Какие именно настройки по умолчанию вас не устраивают?
Фар есть инструмент, а не нянька. © 2009 DrKnS

2useven10
Posts: 3623
Joined: Mon 07 Sep, 2009 10:40
Has thanked: 3 times
Been thanked: 143 times

MultiArc: Archive support plugin — Модуль работы с архивами

Post by 2useven10 » Thu 27 Sep, 2018 14:31

CyBear wrote:
Thu 27 Sep, 2018 11:05
Хочу объяснить почему мы сознательно не используем rar.fmt и удаляем его из %farhome%\Plugins\MultiArc\Formats\.
Дело в том, что rar.fmt (arj.fmt) будет брать настройки из реестра HKEY_CURRENT_USER\Software\Far Manager\Plugins\MultiArc\RAR, а не из %farhome%\Plugins\MultiArc\Formats\custom.ini, что нам не подходит.
Можно записать нужные данные в реестр в автостартующем макросе, тогда бубен будет не нужен.

User avatar
CyBear
Posts: 16
Joined: Thu 02 Dec, 2010 05:46
Location: Братск
Has thanked: 5 times
Contact:

MultiArc: Archive support plugin — Модуль работы с архивами

Post by CyBear » Fri 28 Sep, 2018 05:24

HaRT wrote:
Thu 27 Sep, 2018 11:44
Усвоили ли вы документацию по интересующим вас параметрам? Её можно найти, например, в большом комментарии в начале файла custom.ini из комплекта поставки Far 1.75
Мне удалось реализовать некоторые задачи для работы MultiArc в связке "cmd-скриптов + DosBox", и да, документация очень помогла, активно её использую, внимательно всё прочитал и изучил, освоил и разобрался со всеми параметрами и переменными, кроме этих трёх параметров - Start=, End= и Format0=.
У меня жёсткий клинч с ними! Никак не могу разобраться и поэтому ищу у Вас поддержки на форуме.

Возможно существует дополнительная документация, разъясняющая в примерах как и каким образом нужно настраивать эти параметры? Я с радостью почитал бы, очень хочу понять и разобраться как это работает.
HaRT wrote:
Thu 27 Sep, 2018 11:44
CyBear wrote:
Thu 27 Sep, 2018 11:05
rar.fmt (arj.fmt) будет брать настройки из реестра HKEY_CURRENT_USER\Software\Far Manager\Plugins\MultiArc\RAR
Если там ничего нет, будут использоваться настройки по умолчанию, которые вроде бы вполне работоспособны. Какие именно настройки по умолчанию вас не устраивают?
Да, настройки по умолчанию будут взяты из rar.fmt, я подробно изучил их, взяв исходник rar.cpp:

Code: Select all

    // Console RAR 5.0 commands
    static const char *Commands[]={
    /*Extract               */"rar x {-p%%P} {-ap%%R} -y -c- -kb -- %%A @%%LNMA",
    /*Extract without paths */"rar e {-p%%P} -y -c- -kb -- %%A @%%LNMA",
    /*Test                  */"rar t -y {-p%%P} -- %%A",
    /*Delete                */"rar d -y {-w%%W} -- %%A @%%LNMA",
    /*Comment archive       */"rar c -y {-w%%W} -- %%A",
    /*Comment files         */"",
    /*Convert to SFX        */"rar s -y -- %%A",
    /*Lock archive          */"rar k -y -- %%A",
    /*Protect archive       */"rar rr -y -- %%A",
    /*Recover archive       */"rar r -y -- %%A",
    /*Add files             */"rar a -y {-p%%P} {-ap%%R} {-w%%W} {%%S} -- %%A @%%LNA",
    /*Move files            */"rar m -y {-p%%P} {-ap%%R} {-w%%W} {%%S} -- %%A @%%LNA",
    /*Add files and folders */"rar a -r0 -y {-p%%P} {-ap%%R} {-w%%W} {%%S} -- %%A @%%LNA",
    /*Move files and folders*/"rar m -r0 -y {-p%%P} {-ap%%R} {-w%%W} {%%S} -- %%A @%%LNA",
    /*"All files" mask      */"*.*"
При этом, забыл уточнить, хотя и не используется rar.fmt, а вместо него работаем с custom.fmt, всё равно нужен UnRAR.dll, и он размещён в %farhome%\Plugins\MultiArc\Formats\ и соответствует вызываемой консольной версии rar.exe и взят также с оф.сайта

Если считать что в fmt-файлах лежат только команды и параметры архиваторов, то да, настройки работоспособны и вполне устраивают, но мы не используем такую возможность чтобы не расшаривать в %PATH% пути к архиваторам и скриптам, а также не использовать настройки из реестра HKEY_CURRENT_USER\Software\Far Manager\Plugins\MultiArc\, поэтому мы остановились на варианте, когда требуемые скрипты и ПО лежат в %FARHOME%\Ware\, а для работы с MultiArc используется универсальный custom.fmt и свой набор параметров.

Что же касается работы custom.fmt и приведённым выше комментарием настройки MultiArc для *.ARJ в части настроек Start=, End= и Format0=, то совершенно не могу понять, почему в один и тот же архив, например, тот же ArcLite заходит и видит все файлы и распаковывает их, а "мой конфиг" для MultiArc также заходит и распаковывает, но только часть файлов...

Я запутался и не могу сам разобраться, пожалуйста, помогите с этим моментом!

Архиватор ARJ32 взят с оф.сайта, а файл, на котором проявляется подобный казус с открыванием и распаковкой, прикладываю вложением к этому сообщению, в этом примере это рассылаемый ЦБ РФ справочник ОКАТО OKATO_BO.ARJ, запакованный в OKATO_BO.ARJ.7z чтобы форма отправки сообщений смогла его прикрепить на форум.
2useven10 wrote:
Thu 27 Sep, 2018 14:31
CyBear wrote:
Thu 27 Sep, 2018 11:05
Хочу объяснить почему мы сознательно не используем rar.fmt и удаляем его из %farhome%\Plugins\MultiArc\Formats\.
Дело в том, что rar.fmt (arj.fmt) будет брать настройки из реестра HKEY_CURRENT_USER\Software\Far Manager\Plugins\MultiArc\RAR, а не из %farhome%\Plugins\MultiArc\Formats\custom.ini, что нам не подходит.
Можно записать нужные данные в реестр в автостартующем макросе, тогда бубен будет не нужен.
Что же касается этого варианта, то мы не рассматривали возможность работы с реестром, поэтому таких наработок и не вели, а решили реализовать всё через custom.fmt.

Не могли бы Вы указать мне на документацию по автостартующим макросам или привести частично готовый пример?
Спасибо.
Attachments
OKATO_BO.ARJ.7z
(799.93 KiB) Downloaded 8 times
Last edited by CyBear on Fri 28 Sep, 2018 06:27, edited 3 times in total.

2useven10
Posts: 3623
Joined: Mon 07 Sep, 2009 10:40
Has thanked: 3 times
Been thanked: 143 times

MultiArc: Archive support plugin — Модуль работы с архивами

Post by 2useven10 » Fri 28 Sep, 2018 06:29

CyBear wrote:
Fri 28 Sep, 2018 05:24
Не могли бы Вы указать мне на документацию по автостартующим макросам или привести частично готовый пример?
Можно поместить код который надо выполнить при старте в файл Macros\scripts\_macroinit.lua.
Ф-ии работы с реестром описаны в Encyclopedia\luafar_manual.chm Additional libraries -> win -> Registry access.

User avatar
CyBear
Posts: 16
Joined: Thu 02 Dec, 2010 05:46
Location: Братск
Has thanked: 5 times
Contact:

MultiArc: Archive support plugin — Модуль работы с архивами

Post by CyBear » Fri 28 Sep, 2018 08:24

2useven10 wrote:
Fri 28 Sep, 2018 06:29
CyBear wrote:
Fri 28 Sep, 2018 05:24
Не могли бы Вы указать мне на документацию по автостартующим макросам или привести частично готовый пример?
Можно поместить код который надо выполнить при старте в файл Macros\scripts\_macroinit.lua.
Ф-ии работы с реестром описаны в Encyclopedia\luafar_manual.chm Additional libraries -> win -> Registry access.
Краткая инфо о ПО: Win7 SP1 Pro x64 RU, FAR 3.0 build 5273 x86.

Требуется создать ветку реестра HKEY_CURRENT_USER\Software\Far Manager\Plugins\MultiArc\RAR и в ней параметр "DefExt" с типом "REG_SZ" и значением "rar".

В реестре ветки HKEY_CURRENT_USER\Software\Far Manager\Plugins\MultiArc\RAR нет.
Создали макрос _macroinit.lua и поместили код.

Запускаем FAR, пишет при старте:
\Macros\scripts\_macroinit.lua:5:invalid escape sequence near '"Software'

Код в _macroinit.lua:

Code: Select all

Macro {
description="Set regisry for MultiArc";
area="Shell"; flags="RunAfterFARStart";
action=function()
win.SetRegKey("HKCU","Software\Far Manager\Plugins\MultiArc\RAR","DefExt","string","rar")
end;
}
Пожалуйста, укажите на мою ошибку, что я делаю не так?

Shmuel
Posts: 5577
Joined: Thu 23 Mar, 2006 21:36
Location: Israel
Has thanked: 21 times
Been thanked: 186 times

MultiArc: Archive support plugin — Модуль работы с архивами

Post by Shmuel » Fri 28 Sep, 2018 08:34

Надо удваивать все бэкслеши внутри кавычек.

2useven10
Posts: 3623
Joined: Mon 07 Sep, 2009 10:40
Has thanked: 3 times
Been thanked: 143 times

MultiArc: Archive support plugin — Модуль работы с архивами

Post by 2useven10 » Fri 28 Sep, 2018 09:05

Imho,
В _macroinit.lua код не обязательно оформлять в Macro {}.
Т.е. можно оставить только:
win.SetRegKey("HKCU","Software\\Far Manager\\Plugins\\MultiArc\\RAR","DefExt","string","rar")

Если я ошибаюсь Shmuel поправит...
Last edited by 2useven10 on Fri 28 Sep, 2018 09:08, edited 2 times in total.

Shmuel
Posts: 5577
Joined: Thu 23 Mar, 2006 21:36
Location: Israel
Has thanked: 21 times
Been thanked: 186 times

MultiArc: Archive support plugin — Модуль работы с архивами

Post by Shmuel » Fri 28 Sep, 2018 09:42

И в других макрофайлах тоже не обязательно заворачивать в Macro {}.
Зависит от того, что мы хотим: если надо исполнить один раз при старте Фара - нужен автостартующий макрос; если надо исполнять при каждой загрузке и перезагрузке макросов - заворачивать не надо.

User avatar
CyBear
Posts: 16
Joined: Thu 02 Dec, 2010 05:46
Location: Братск
Has thanked: 5 times
Contact:

MultiArc: Archive support plugin — Модуль работы с архивами

Post by CyBear » Fri 28 Sep, 2018 10:42

В общем, с Вашей помощью, уважаемые форумчане и разработчики, удалось решить "проблему", большое спасибо всем отписавшимся!

Реализовано было через разовый авто-скрипт _macroinit.lua в FAR с флагом "RunAfterFARStart", правда не знаю как оно будет работать с "ReadOnlyConfig=1" в "Far.exe.ini" и как вообще будет себя вести на LiveCD сборке, но оно хотя бы работает!

Итак, чтобы "MultiArc" обрабатывал архивы *.ARJ и *.RAR с Вашими параметрами, делаем следующее:

1. Установить "MultiArc" в "Plugins\MultiArc\".

2. Извлечь UnRAR.dll и UnRAR.lib из UnRARDLL.exe и поместить их в Plugins\MultiArc\Formats\ с заменой существующих.

3. Извлечь все файлы из wrar561b1.exe и поместить их в "%FARHOME%\Ware\ARC\RAR\".

4. Скачать с оф.сайта ARJ32 3.20 файл ARJ32V320.EXE, извлечь из него файл ARJ32.EXE и поместить его в "%FARHOME%\Ware\ARC\".

5. Поместить файл скрипта, приложенного к сообщению, в Ваш профиль Profile\Macros\scripts\_macroinit.lua.

6. Убедиться, что в Plugins\MultiArc\Formats\ есть файлы: UnRAR.dll, arj.fmt, rar.fmt, UnRAR.lib и перезапустить FAR.

P.S> Чтобы убрать задержку в обработке ARJ32.EXE его необходимо зарегистрировать, для этого воспользуйтесь утилитой REGISTER.EXE и прочитайте REGISTER.TXT из состава дистрибутива.
Attachments
_macroinit.lua
(7.5 KiB) Downloaded 25 times

2useven10
Posts: 3623
Joined: Mon 07 Sep, 2009 10:40
Has thanked: 3 times
Been thanked: 143 times

MultiArc: Archive support plugin — Модуль работы с архивами

Post by 2useven10 » Fri 28 Sep, 2018 11:44

CyBear wrote:
Fri 28 Sep, 2018 10:42
Реализовано было через разовый авто-скрипт _macroinit.lua в FAR с флагом "RunAfterFARStart", правда не знаю как оно будет работать с "ReadOnlyConfig=1" в "Far.exe.ini" и как вообще будет себя вести на LiveCD сборке, но оно хотя бы работает!
При ReadOnlyConfig=1 конфигурационные базы фар просто открываются в памяти (изменения не будут записаны на диск), поэтому проблем быть не должно. Запись в реестр на LiveCD imho должна работать аналогично, но проверить конечно не мешает.

Post Reply

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