MultiArc
Select messages from
# through # FAQ
[/[Print]\]
Goto page Previous  1, 2, 3, 4, 5 ... 30, 31, 32  Next  :| |:
Total Commander -> Плагины Total Commander

#46:  Author: fundukLocation: Санкт-Петербург PostPosted: Mon Apr 10, 2006 20:13
    —
vserd wrote:
Покажи мне как можно получить размер сжатого файла

Это не всегда можно сделать - не все архиваторы ведь возвращают такую информацию. Но 7zip, судя по плагину 7zip0.4.8, возвращает.

#47:  Author: vserd PostPosted: Tue Apr 11, 2006 11:01
    —
funduk wrote:

Но 7zip, судя по плагину 7zip0.4.8, возвращает.

Узко заточенный плугин может гораздо больше чем широко форматный.

#48:  Author: fundukLocation: Санкт-Петербург PostPosted: Tue May 09, 2006 23:48
    —
2vserd
WDX-плагин-request тебе:
используя текущий файл multiarc.ini выдать по файлу, будет ли он рассмотрен мультиарком (передастся ли он архиватору), и если будет, то какая именно секция сработает и какая именно позиция из idpos даёт результат первой.

Также полезно узнавать, какая строка (задаваемой в настройках длины) находится по такому-то смещению (по колонке на каждое), а также предыдущие/следующие 4 (или тоже в настройках) байта.
Число смещений можно ограничить 20 (т.е. всего 60 возможных значений).

Даже имхо прошу много, но и первой части будет достаточно. Возможно, для создания основной части плагина достаточно будет копипаста из кода самого мультиарка Very Happy

#49:  Author: vserd PostPosted: Wed May 10, 2006 12:25
    —
funduk
По русски пожалуйста :(. Ничего не понял.

#50:  Author: fundukLocation: Санкт-Петербург PostPosted: Wed May 10, 2006 12:37
    —
Первое:
нужно просто парсить секции мультиарка и искать, какая из них сработает на данный файл (это же WDX плагин => три поля: название секции, id, которую нашли в файле, и idpos, начиная с которой в файле идёт эта найденная id).

Что непонятно?

Второе:
берётся файл, открывается на чтение и смотрим на строку длины xxx по смещению yyy, где xxx и yyy берутся из настроек самого плагина (=ini). Т.е. здесь файл multiarc.ini не задействован.

#51:  Author: vserd PostPosted: Wed May 10, 2006 12:45
    —
funduk
WDX ты будешь писать или я?
Если я, тогда пас. Меня SFX достал по самое не хочу. А я хочу еще сделать изменение в GUI интерфейсе плгина.
исходники можешь взять с CVS Sourceforge.

#52:  Author: fundukLocation: Санкт-Петербург PostPosted: Wed May 10, 2006 12:49
    —
Ты, конечно Smile

Но ведь для начала можно и не парсить те секции, в которых skipsfxheader = 1.

#53:  Author: vserd PostPosted: Tue May 16, 2006 10:36
    —
Новая бета 1.3
hччp://prdownloads.sourceforge.net/wcx/wcx_multiarc_13b.zip?download

#54:  Author: fundukLocation: Санкт-Петербург PostPosted: Sun May 21, 2006 18:39
    —
Предлагаю добавить регэкспы для распознавания ID. В нынешних аддонах начальные части часто совпадают...

Сейчас, например, так:
Code:

ID=49 6E 6E 6F 20 53 65 74 75 70 20 53 65 74 75 70 20 44 61 74 61 20 28 33 2E 30 2E 31 29 00, 49 6E 6E 6F 20 53 65 74 75 70 20 53 65 74 75 70 20 44 61 74 61 20 28 33 2E 30 2E 33 29 00, 49 6E 6E 6F 20 53 65 74 75 70 20 53 65 74 75 70 20 44 61 74 61 20 28 33 2E 30 2E 35 29 00, 49 6E 6E 6F 20 53 65 74 75 70 20 45 78 74 65 6E 73 69 6F 6E 73 20 53 65 74 75 70 20 44 61 74 61 20 28 33
;ID="Inno Setup Setup Data (3.0.1) , Inno Setup Setup Data (3.0.3) , Inno Setup Setup Data (3.0.5) , Inno Setup Extensions Setup Data (3"

А будет так:
Code:
ID=49 6E 6E 6F 20 53 65 74 75 70 20 (53 65 74 75 70 20 44 61 74 61 20 28 33 2E 30 2E (31|33|35) 29|45 78 74 65 6E 73 69 6F 6E 73 20 53 65 74 75 70 20 44 61 74 61 20 28 33)
;ID="Inno Setup (Setup Data \(3.0.(1|3|5)\)|Extensions Setup Data \(3)"

В кавычках - то, что должно передаться процедуре парсинга регэкспа.

Сильно убыстрит поиск. И упростит запись для тех, кто имеет должную сноровку.

#55:  Author: vserd PostPosted: Mon May 22, 2006 12:26
    —
Подумаю, но регэкспы не так просты для добавления.

#56:  Author: fundukLocation: Санкт-Петербург PostPosted: Mon May 22, 2006 17:17
    —
Я надеюсь, что ты сам не начнёшь их добавлять, а возьмёшь библиотеку какую-нибудь. А потом просто: если символ из ID в регэкспах должен иметь перед собой бэкслэш (как скобки в моём примере; ещё и точки туда надо, т.е пример у меня не корректный), то в новую строку добавляются два символа - \ и сам символ. Если не должен, то он идёт в новую строку в одиночестве. Выглядит всё просто.

#57:  Author: vserd PostPosted: Tue May 23, 2006 11:37
    —
Рег экспы не предназначены для двоичных файлов, так что в МА их не будет.

#58:  Author: fundukLocation: Санкт-Петербург PostPosted: Tue May 23, 2006 15:59
    —
Поподробнее, пожалуйста. Smile
Неужели нельзя из двоичного файла скопировать в строку длины, скажем, 50 нужные символы и работать со строкой? Можно даже запретить в регэкспах использование +, * и т.п. и тогда необходимая длина высчитается точно (тока парсить самому придётся, чтобы длину посчитать). Или это число (50) в каждой секции задавать...

#59:  Author: Alextp PostPosted: Tue May 23, 2006 16:17
    —
Насколько я понял, все известные библиотеки регэкспов просто не расчитаны на двоичные файлы. Поэтому будут дико глючить. Smile

#60:  Author: fundukLocation: Санкт-Петербург PostPosted: Tue May 23, 2006 16:24
    —
Понятное дело не рассчитаны. Я и говорю: надо им подсовывать строки. Со строками-то они должны работать даже если в них есть непечатные символы.



Total Commander -> Плагины Total Commander


output generated using printer-friendly topic mod. All times are GMT + 4 Hours

Goto page Previous  1, 2, 3, 4, 5 ... 30, 31, 32  Next  :| |:
Page 4 of 32

Powered by phpBB © 2001, 2005 phpBB Group