cmdTotal 2.02: Поддержка юникодных плагинов
Select messages from
# through # FAQ
[/[Print]\]
Goto page 1, 2, 3, 4  Next  :| |:
Total Commander -> Плагины Total Commander

#1: cmdTotal 2.02: Поддержка юникодных плагинов Author: CaptainFlintLocation: Москва PostPosted: Wed Apr 03, 2013 18:05
    —
Поскольку есть интерес в использовании утилиты cmdTotal в современном окружении, я доработал её до поддержки юникодного API. Утилита сначала пытается использовать юникодные функции, а если не получается, — обращается к плагину через ANSI-интерфейсы. Поддержка систем Win9x в данной версии отсутствует.

Ссылки на скачивание:
основная / зеркало (8,6 Кб)

P.S. Автором оригинальной программы является Adam Blaszczyk (KaKeeware). К сожалению, его сайт прекратил существование. Частично сохранённую копию исходной страницы можно найти на Internet Archive.


Last edited by CaptainFlint on Mon Mar 02, 2015 23:53; edited 4 times in total

#2:  Author: goraLocation: Иваново PostPosted: Wed Apr 03, 2013 18:30
    —
CaptainFlint
Огромное спасибо. Первые тесты показали положительные результаты.
Немного странной (запутывающей) выглядит информация о версии и копирайтах. Она разная при запуске старых и новых плагинов. Так задумано? Может не стоит "путать" пользователя? Wink

#3:  Author: CaptainFlintLocation: Москва PostPosted: Wed Apr 03, 2013 18:40
    —
gora wrote:
Немного странной (запутывающей) выглядит информация о версии и копирайтах. Она разная при запуске старых и новых плагинов.

Не могёт того быть. Ты точно один и тот же файл пускаешь?

#4:  Author: goraLocation: Иваново PostPosted: Wed Apr 03, 2013 19:00
    —
CaptainFlint wrote:
Не могёт того быть.

Упс... Точно, мой косяк. Sad Пути к утилитам в скрипте берутся из %PATH%, а там оказались обе версии в разных папках.
Мои извинения за дезинформацию.

#5:  Author: goraLocation: Иваново PostPosted: Sun Apr 14, 2013 16:32
    —
CaptainFlint
Тестовый стенд:
- плагин ISO взятый здесь
- образ VBoxGuestAdditions.iso версии 4.2.10 из пакета VirtualBox. Образ сконветрирован в VBOXADDITIONS_4.2.10_84104.img с помощью UltraISO
- сам плагин распаковывает содержимое .img образа корректно.
- распаковка через старый cmdTotal.exe+плагин происходит с ошибками. Все файлы в корне образа распаковываются корректно, а вложенные папки распаковываются в файлы без расширения и размером все 2048 байт.
- распаковка через новый cmdTotal.exe+плагин происходит с ошибками. Все файлы в корне образа распаковываются в файлы размером 2048 байт (все, которые больше этой величины) и один с нормальным размером, т.к. он 647 байт, а вложенные папки распаковываются в файлы без расширения и размером все 2048 байт.
Проверка этих "обрезанных" файлов показывает, что это начала нужных файлов, но в них только первые 2 КБ этих файлов.

#6:  Author: CaptainFlintLocation: Москва PostPosted: Mon Apr 15, 2013 17:13
    —
gora
Выложи, плиз, сам IMG-файл. Неохота ставить ультру только ради конвертации (и ещё не факт, что триалка нормально сконвертит).

Добавлено спустя 25 минут:

А впрочем, не надо, на исходной исошке тоже воспроизводится, только файлы урезаются по 20480 байт, а не по 2048.
Попробую разобраться. Там, кстати, ещё одна бага есть: если не указывать целевой каталог, а имя архива указано с путём, то распаковка не выполняется совсем. Тоже планирую поправить.

#7:  Author: CaptainFlintLocation: Москва PostPosted: Mon Apr 15, 2013 21:18
    —
gora
Выяснил, в чём дело. Вообще говоря, виноват плагин, рассчитывающий на никем не обещанное поведение и в результате падающий после извлечения первого же блока данных (этим объясняется размер в 20480 байт у файлов), а также не учитывающий собственную же информацию о том, что из его объектов является файлом, а что — каталогом. Поскольку Тотал ведёт себя иначе, чем утилитка, в нём всё работает. Подогнал найденные различия под поведение Тотала, теперь у меня исошка распаковывается корректно. Вторую найденную мной багу тоже поправил. Тестовая версия 2.01 в шапке.

#8:  Author: goraLocation: Иваново PostPosted: Mon Apr 15, 2013 22:29
    —
CaptainFlint

Проверил на пяти видах образов: bin, img, iso, mdf, nrg
Все распаковалось корректно.
Второй баг также проверил на всех пяти форматах, баг отсутствует.

Спасибо! Smile

Если еще что наковыряю, отпишу.

#9:  Author: CaptainFlintLocation: Москва PostPosted: Mon Apr 15, 2013 23:24
    —
gora
Хорошо бы погонять на самых разных плагинах, чтобы убедиться, что такая заточка под ляпы конкретного плагина не отразилась на прочих. Кое-что я, конечно, тоже проверяю, но поскольку этой утилитой в целом не пользуюсь, то тщательного тестирования обеспечить не могу.

#10:  Author: LonerDLocation: Донецк PostPosted: Tue Apr 16, 2013 05:42
    —
CaptainFlint
Баг или не баг, но утилитка с помощью специфического плагина wordarc.wcx не может извлечь файл в формате txt из doc-файла. Если открыть этот же doc-файл в Тотале как архив - то формат извлекается.

#11:  Author: CaptainFlintLocation: Москва PostPosted: Tue Apr 16, 2013 12:41
    —
LonerD
Выложи пример файла и скажи, какой именно из txt-вариантов не извлекается, там их 9 штук. Причём у меня 4 из них распаковываются нормально, остальные сыпят ошибками, что в Тотале, что в cmdTotal (из-за отсутствия MS Word в системе).

#12:  Author: LonerDLocation: Донецк PostPosted: Tue Apr 16, 2013 13:24
    —
Файл любой, насколько я понимаю - любой. Пример простейшего файла.
http://rghost.ru/45326129
Стоит Word 2013.
Не извлекается самый простейший вариант - word.txt (если открыть файл как архив - то извлекается).
http://rghost.ru/45326252.view

#13:  Author: CaptainFlintLocation: Москва PostPosted: Tue Apr 16, 2013 19:12
    —
LonerD
Как выяснилось, проблема в плагине. Для word.txt он использует OLE-интерфейс Ворда, только вот про то, что предварительно нужно ещё проинициализировать COM-подсистему, он то ли забыл, то ли просто решил не заморачиваться. Обычно всё происходит в памяти Тотала, который для своих целей уже всё проинициализировал, поэтому с Тоталом плагин работает, а с утилитой — нет.

Я могу добавить вызов CoInitialize (проверил, с ним работает), но на каждый плагин не напасёшься. Мало ли чего ещё забудут проинициализировать, а утилитка в итоге потащит за собой ворох тяжеловесных зависимостей, нужных только для залатывания таких вот глюков. Не нравится мне эта идея…

#14:  Author: LonerDLocation: Донецк PostPosted: Tue Apr 16, 2013 23:14
    —
Quote:
Я могу добавить вызов CoInitialize (проверил, с ним работает), но на каждый плагин не напасёшься.

Да уж, ситуация специфическая.
Недоделан плагин, а виноватой получается утилитка, потому что в Тотале плагин-то работает, претензий к нему не предъявишь Rolling Eyes

#15:  Author: CaptainFlintLocation: Москва PostPosted: Wed Apr 17, 2013 01:25
    —
В общем, раз баг не мой, пока публикую текущую версию полноценно, а там посмотрим.



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


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

Goto page 1, 2, 3, 4  Next  :| |:
Page 1 of 4

Powered by phpBB © 2001, 2005 phpBB Group