Total Commander Forum Index Total Commander
Форум поддержки пользователей Total Commander
Сайты: Все о Total Commander | Totalcmd.net | Ghisler.com | RU.TCKB
 
 RulesRules   SearchSearch   FAQFAQ   MemberlistMemberlist   UsergroupsUsergroups   RegisterRegister 
 ProfileProfile   Log in to check your private messagesLog in to check your private messages   Log inLog in 

MultiArc
Goto page Previous  1, 2, 3, 4, 5 ... 30, 31, 32  Next
 
Post new topic   Reply to topic    Total Commander Forum Index -> Плагины Total Commander printer-friendly view
View previous topic :: View next topic  
Author Message
funduk



Joined: 16 Aug 2005
Posts: 1513
Location: Санкт-Петербург

Post (Separately) Posted: Mon Apr 10, 2006 20:13    Post subject: Reply with quote

vserd wrote:
Покажи мне как можно получить размер сжатого файла

Это не всегда можно сделать - не все архиваторы ведь возвращают такую информацию. Но 7zip, судя по плагину 7zip0.4.8, возвращает.
Back to top
View user's profile Send private message
vserd



Joined: 26 Apr 2005
Posts: 118

Post (Separately) Posted: Tue Apr 11, 2006 11:01    Post subject: Reply with quote

funduk wrote:

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

Узко заточенный плугин может гораздо больше чем широко форматный.
Back to top
View user's profile Send private message
funduk



Joined: 16 Aug 2005
Posts: 1513
Location: Санкт-Петербург

Post (Separately) Posted: Tue May 09, 2006 23:48    Post subject: Reply with quote

2vserd
WDX-плагин-request тебе:
используя текущий файл multiarc.ini выдать по файлу, будет ли он рассмотрен мультиарком (передастся ли он архиватору), и если будет, то какая именно секция сработает и какая именно позиция из idpos даёт результат первой.

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

Даже имхо прошу много, но и первой части будет достаточно. Возможно, для создания основной части плагина достаточно будет копипаста из кода самого мультиарка Very Happy
Back to top
View user's profile Send private message
vserd



Joined: 26 Apr 2005
Posts: 118

Post (Separately) Posted: Wed May 10, 2006 12:25    Post subject: Reply with quote

funduk
По русски пожалуйста :(. Ничего не понял.
Back to top
View user's profile Send private message
funduk



Joined: 16 Aug 2005
Posts: 1513
Location: Санкт-Петербург

Post (Separately) Posted: Wed May 10, 2006 12:37    Post subject: Reply with quote

Первое:
нужно просто парсить секции мультиарка и искать, какая из них сработает на данный файл (это же WDX плагин => три поля: название секции, id, которую нашли в файле, и idpos, начиная с которой в файле идёт эта найденная id).

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

Второе:
берётся файл, открывается на чтение и смотрим на строку длины xxx по смещению yyy, где xxx и yyy берутся из настроек самого плагина (=ini). Т.е. здесь файл multiarc.ini не задействован.
Back to top
View user's profile Send private message
vserd



Joined: 26 Apr 2005
Posts: 118

Post (Separately) Posted: Wed May 10, 2006 12:45    Post subject: Reply with quote

funduk
WDX ты будешь писать или я?
Если я, тогда пас. Меня SFX достал по самое не хочу. А я хочу еще сделать изменение в GUI интерфейсе плгина.
исходники можешь взять с CVS Sourceforge.
Back to top
View user's profile Send private message
funduk



Joined: 16 Aug 2005
Posts: 1513
Location: Санкт-Петербург

Post (Separately) Posted: Wed May 10, 2006 12:49    Post subject: Reply with quote

Ты, конечно Smile

Но ведь для начала можно и не парсить те секции, в которых skipsfxheader = 1.
Back to top
View user's profile Send private message
vserd



Joined: 26 Apr 2005
Posts: 118

Post (Separately) Posted: Tue May 16, 2006 10:36    Post subject: Reply with quote

Новая бета 1.3
hччp://prdownloads.sourceforge.net/wcx/wcx_multiarc_13b.zip?download
Back to top
View user's profile Send private message
funduk



Joined: 16 Aug 2005
Posts: 1513
Location: Санкт-Петербург

Post (Separately) Posted: Sun May 21, 2006 18:39    Post subject: Reply with quote

Предлагаю добавить регэкспы для распознавания 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)"

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

Сильно убыстрит поиск. И упростит запись для тех, кто имеет должную сноровку.
Back to top
View user's profile Send private message
vserd



Joined: 26 Apr 2005
Posts: 118

Post (Separately) Posted: Mon May 22, 2006 12:26    Post subject: Reply with quote

Подумаю, но регэкспы не так просты для добавления.
Back to top
View user's profile Send private message
funduk



Joined: 16 Aug 2005
Posts: 1513
Location: Санкт-Петербург

Post (Separately) Posted: Mon May 22, 2006 17:17    Post subject: Reply with quote

Я надеюсь, что ты сам не начнёшь их добавлять, а возьмёшь библиотеку какую-нибудь. А потом просто: если символ из ID в регэкспах должен иметь перед собой бэкслэш (как скобки в моём примере; ещё и точки туда надо, т.е пример у меня не корректный), то в новую строку добавляются два символа - \ и сам символ. Если не должен, то он идёт в новую строку в одиночестве. Выглядит всё просто.
Back to top
View user's profile Send private message
vserd



Joined: 26 Apr 2005
Posts: 118

Post (Separately) Posted: Tue May 23, 2006 11:37    Post subject: Reply with quote

Рег экспы не предназначены для двоичных файлов, так что в МА их не будет.
Back to top
View user's profile Send private message
funduk



Joined: 16 Aug 2005
Posts: 1513
Location: Санкт-Петербург

Post (Separately) Posted: Tue May 23, 2006 15:59    Post subject: Reply with quote

Поподробнее, пожалуйста. Smile
Неужели нельзя из двоичного файла скопировать в строку длины, скажем, 50 нужные символы и работать со строкой? Можно даже запретить в регэкспах использование +, * и т.п. и тогда необходимая длина высчитается точно (тока парсить самому придётся, чтобы длину посчитать). Или это число (50) в каждой секции задавать...
Back to top
View user's profile Send private message
Alextp



Joined: 06 Feb 2005
Posts: 4957

Post (Separately) Posted: Tue May 23, 2006 16:17    Post subject: Reply with quote

Насколько я понял, все известные библиотеки регэкспов просто не расчитаны на двоичные файлы. Поэтому будут дико глючить. Smile
_________________
UniViewer - CudaText - LogViewer
Back to top
View user's profile Send private message
funduk



Joined: 16 Aug 2005
Posts: 1513
Location: Санкт-Петербург

Post (Separately) Posted: Tue May 23, 2006 16:24    Post subject: Reply with quote

Понятное дело не рассчитаны. Я и говорю: надо им подсовывать строки. Со строками-то они должны работать даже если в них есть непечатные символы.
Back to top
View user's profile Send private message
Display posts from previous:   
Post new topic   Reply to topic    Total Commander Forum Index -> Плагины Total Commander All times are GMT + 4 Hours
Goto page Previous  1, 2, 3, 4, 5 ... 30, 31, 32  Next
Page 4 of 32

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum


Powered by phpBB © 2001, 2005 phpBB Group