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 ... 21, 22, 23 ... 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
Skif_off



Joined: 28 Nov 2012
Posts: 1232

Post (Separately) Posted: Mon May 30, 2016 16:44    Post subject: Reply with quote

MVV wrote:
избавиться от SHFileOperation

А как тогда быть с диалогами?
Back to top
View user's profile Send private message
MVV



Joined: 15 Oct 2009
Posts: 4811
Location: Ростов-Дон

Post (Separately) Posted: Mon May 30, 2016 20:26    Post subject: Reply with quote

С какими диалогами?
В MultiArc функция SHFileOperation вызывается всего в 2 местах - 1 раз для переноса извлечённых файлов из временной папки в папку назначения и 1 раз для зачистки временной папки. При этом она не показывает никаких диалогов.
_________________
TCFS2 + TCFS2Tools: Полноэкранный режим и многое другое (обсуждение)
WINCMD.RU: AskParam, CopyTree, NTLinks, Sudo, VirtualPanel…
Back to top
View user's profile Send private message
Skif_off



Joined: 28 Nov 2012
Posts: 1232

Post (Separately) Posted: Mon May 30, 2016 21:38    Post subject: Reply with quote

MVV
Ступил Smile Беглый гуглопоск вынес на
Quote:
SHFileOperation копирует, перемещает, переименовывает или удаляет объект в файловой системе. Вместо незаметного выполнения действия, как это делают обычные функции API, SHFileOperation использует подсказки диалогового окна оболочки.
Back to top
View user's profile Send private message
MVV



Joined: 15 Oct 2009
Posts: 4811
Location: Ростов-Дон

Post (Separately) Posted: Mon May 30, 2016 22:58    Post subject: Reply with quote

Тут эта функция использована лишь с целью перенести папку со всем содержимым.
_________________
TCFS2 + TCFS2Tools: Полноэкранный режим и многое другое (обсуждение)
WINCMD.RU: AskParam, CopyTree, NTLinks, Sudo, VirtualPanel…
Back to top
View user's profile Send private message
MVV



Joined: 15 Oct 2009
Posts: 4811
Location: Ростов-Дон

Post (Separately) Posted: Wed Jun 01, 2016 00:35    Post subject: Reply with quote

Исправил баг, теперь должно работать.

MultiArc 1.4.2.122

Собственно, условия воспроизведения ситуации:
1. Извлекать файлы обязательно из подкаталога архива.
2. Извлекать в каталог с таким же именем, как у подкаталога архива, в котором они находятся.
3. Немного уличной магии (иногда воспроизводится не с первой попытки, а после нескольких).
_________________
TCFS2 + TCFS2Tools: Полноэкранный режим и многое другое (обсуждение)
WINCMD.RU: AskParam, CopyTree, NTLinks, Sudo, VirtualPanel…
Back to top
View user's profile Send private message
MVV



Joined: 15 Oct 2009
Posts: 4811
Location: Ростов-Дон

Post (Separately) Posted: Sat Jun 04, 2016 20:41    Post subject: Reply with quote

На оффоруме сообщили, что MultiArc слишком часто запрашивает список файлов в архиве, оказалось, что при каждом открытии архива. Поправил эту байду, теперь список запрашивается, только когда он реально нужен.

MultiArc MVV Build 1.4.2.134:
* теперь список файлов в архиве запрашивается только при необходимости, а не при каждом открытии архива
* улучшена обработка неправильных дат (4-значные годы < 1980 отображаются как 1980, а не как 20xx)

Кому не лень, проверьте, что всё работает. Smile
_________________
TCFS2 + TCFS2Tools: Полноэкранный режим и многое другое (обсуждение)
WINCMD.RU: AskParam, CopyTree, NTLinks, Sudo, VirtualPanel…
Back to top
View user's profile Send private message
Skif_off



Joined: 28 Nov 2012
Posts: 1232

Post (Separately) Posted: Sun Jun 05, 2016 00:22    Post subject: Reply with quote

MVV wrote:
Поправил эту байду, теперь список запрашивается, только когда он реально нужен.

Прошу прощения за любопытство, не уловил - это как? Захожу в архив - получаю список, выхожу, захожу снова - снова получаю список.
Back to top
View user's profile Send private message
MVV



Joined: 15 Oct 2009
Posts: 4811
Location: Ростов-Дон

Post (Separately) Posted: Sun Jun 05, 2016 01:43    Post subject: Reply with quote

Ну, раз ничего не заметил, это уже говорит о том, что я по крайней мере ничего не сломал. Very Happy

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

Поковыряв, я выяснил, что MultiArc при каждой инициализации объекта CArchiverEngine, взаимодействующего с архиватором, запрашивал список файлов, даже если этот список не был нужен для последующих действий. Собственно, в упомянутом выше случае листинг запрашивался сначала при открытии архива тоталом для получения списка файлов (тут список реально использовался), а затем уже сам MultiArc инициализировал CArchiverEngine для вызова команды добавления файлов в архив (и тут список файлов в архиве запрашивался впустую).

Теперь список файлов запрашивается только тогда, когда он реально нужен: при перечислении тоталом файлов в архиве (при первом вызове ReadHeader[Ex]) и при удалении файлов из архива (для построения корректного списка удаляемых файлов). Разница может быть заметна, например, при добавлении файлов в очень большой архив, ну или если просто посмотреть, в каких случаях старый и новый MultiArc дергает архиватор.
_________________
TCFS2 + TCFS2Tools: Полноэкранный режим и многое другое (обсуждение)
WINCMD.RU: AskParam, CopyTree, NTLinks, Sudo, VirtualPanel…
Back to top
View user's profile Send private message
Flasher



Joined: 06 Nov 2009
Posts: 14229
Location: Москва

Post (Separately) Posted: Fri Jul 08, 2016 20:11    Post subject: Reply with quote

Flasher wrote:
Ещё проге не хватает поддержки ... ключей с именем архива и методом упаковки.
Я так понял, что в cab-ы лучше чем mscab ничего не жмёт (makecab, 7-zip и т.д.). Что плохого в тихом режиме и указании имени в комстроке?
Нашёл таки родную утилитуэтом пакете последняя). Казалось бы то, что нужно, но с папками не работает и с @%L/%F вместо %S выдаёт ошибку. Sad
Code:
TOTALCMD#BAR#DATA
%COMMANDER_PATH%\Utils\CabArc.exe
-m LZX:21 n "%T%O.cab" %S
cabview.dll
Упаковать выбранное в CAB в другую панель

1

_________________
Автору сборки TC Image (Andrey_A) настоятельно рекомендуется не распространять на иных ресурсах любую предоставленную мной где-либо техническую информацию по автоматизации и оптимизации в работе с ТС и системой.
Back to top
View user's profile Send private message
funduk



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

Post (Separately) Posted: Wed Jul 27, 2016 22:36    Post subject: Reply with quote

Кто-нибудь поддерживает аддоны к мультиарку в актуальном состоянии? В основном интересуют те, которые для инсталляторов. Может ли он эти аддоны выложить на wincmd.ru?

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

MVV
Баги на вкладке настроек "Аддоны":
1) Импорт аддона не работает корректно, например, строки, оканчивающиеся на двойную кавычку, её лишаются при импорте.
2) Статусы всех аддонов - "Не зарегистрирован в TC", хотя, например, для CAB и UHA у меня есть соответствующие строчки в wincmd.ini
3) Кнопка Изменить MultiArc.ini... выдаёт мне при нажатии: "Не удается найти "C:\Program". Проверьте, правильно ли указано имя и повторите попытку."
Думал, может быть, она пытается использовать для открытия Editor, указанный к wincmd.ini - у меня был C:\Program Files (x86)\Notepad++\notepad++.exe без кавычек - я его закавычил, всё равно пишет то же самое.
Back to top
View user's profile Send private message
MVV



Joined: 15 Oct 2009
Posts: 4811
Location: Ростов-Дон

Post (Separately) Posted: Thu Jul 28, 2016 20:25    Post subject: Reply with quote

funduk,
1) При ручной вставке секции в Multiarc.ini аддон работает? В исходниках вроде всё консистентно: чтение и запись через системные функции чтения/записи INI. Следует учитывать, что эти функции при чтении убирают внешние кавычки, если они есть, и добавляют их при сохранении, если параметр начинается/заканчивается пробелами или кавычками. Поэтому правило: если в строке есть кавычки или пробелы в начале или конце, необходимо заключить её в дополнительные кавычки.
2) Регистрируются конкретные расширения, перечисленные в списке расширений в аддоне. Тут нужен пример аддона...
3) Т.к. параметр Editor в wincmd.ini содержит не просто путь, а комстроку, то путь к редактору с пробелами надо обязательно заключать в кавычки. Кроме того, см. ответ на п.п. 1.
_________________
TCFS2 + TCFS2Tools: Полноэкранный режим и многое другое (обсуждение)
WINCMD.RU: AskParam, CopyTree, NTLinks, Sudo, VirtualPanel…
Back to top
View user's profile Send private message
funduk



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

Post (Separately) Posted: Thu Jul 28, 2016 21:11    Post subject: Reply with quote

1) Да. При импорте иногда удаляет только последнюю кавычку, иногда и первую тоже (в параметре Format0). Я твой аддон использую, можешь легко проверить, как он импортируется) Там ещё <SeekID> в 0 превращается и добавляются параметры, которых не было в аддоне.
2) Cab. У меня была строка
Code:
cab=223,%APPDATA%\GHISLER\Plugins\WCX\MultiArc\Multiarc.wcx
, а плагин понимает только строку
Code:
cab=223,C:\Users\Roman\AppData\Roaming\GHISLER\Plugins\WCX\MultiArc\MULTIA~1.WCX

3) Так я говорю, что не зависимо от кавычек не работает.
Back to top
View user's profile Send private message
MVV



Joined: 15 Oct 2009
Posts: 4811
Location: Ростов-Дон

Post (Separately) Posted: Thu Jul 28, 2016 21:51    Post subject: Reply with quote

Quote:
2) Cab. У меня была строка

Хорошо ещё, что у тебя редирекция не используется, как в моем отладочном конфиге. Проверил без редирекции: переменные окружения резолвятся корректно, и проверка работает. Но у меня имя файла плагина после приведения пути к короткому формату остаётся Multiarc.wcx (и команда dir /x не отображает короткого имени для этого файла, но отображает короткие имена для имён с пробелами).
Quote:
3) Так я говорю, что не зависимо от кавычек не работает.

Открыл диалог настройки редактора в тотале, прописал там путь к редактору "E:\Program Files\Tools\EmEditor\EmEditor.exe", в конфиге ожидаемо получил строку Editor=""E:\Program Files\Tools\EmEditor\EmEditor.exe"", и правка конфига через диалог конфигурации MultiArc работает.
_________________
TCFS2 + TCFS2Tools: Полноэкранный режим и многое другое (обсуждение)
WINCMD.RU: AskParam, CopyTree, NTLinks, Sudo, VirtualPanel…
Back to top
View user's profile Send private message
funduk



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

Post (Separately) Posted: Thu Jul 28, 2016 22:49    Post subject: Reply with quote

Code:
Editor=""E:\Program Files\Tools\EmEditor\EmEditor.exe""
Так работает, да. Спасибо!
Путь без кавычек вообще у меня всегда работал, в т.ч. когда, например, в TC plugins manager нажимаешь "Правка" для wincmd.ini. Кстати, на счёт "ожидаемо": тотал заковычил строку, видимо, не смотря на неё вообще. Если бы у тебя было бы так же, проблемы бы не возникло)

На счёт короткого имени, это wcx64!!
Code:
 Содержимое папки C:\Users\Roman\AppData\Roaming\GHISLER\Plugins\WCX\MultiArc

28.07.2016  20:28    <DIR>                       .
28.07.2016  20:28    <DIR>                       ..
28.07.2016  12:54            16 126              1.ini
19.04.2010  14:26    <DIR>                       addons
03.04.2016  20:25             7 680              ConPaste.exe
28.07.2007  23:41            28 672 CONSPA~1.PIP conspawn.pipe
04.08.2013  20:35            51 712 CONSPA~2.PIP conspawn.pipe64
20.09.2015  13:54    <DIR>                       Lang
12.05.2006  16:01             1 747              LICENSE
19.10.2015  20:26            34 945              MultiArc.chm
30.07.2007  23:02            42 678              MultiArc.hlp
28.07.2016  12:54            16 126              MultiArc.ini
04.06.2016  19:30           173 056              MultiArc.wcx
04.06.2016  19:30           214 016 MULTIA~1.WCX MultiArc.wcx64
28.07.2016  20:07            16 202 MULTIA~1.INI MultiArc_.ini
28.07.2016  12:55               675 MVVINN~1.ADD MVV inno.addon
23.05.2006  17:17             1 714 MYINNO~1.ADD My Inno.addon
11.05.2006  10:10             1 418 MYNSIS~1.ADD My NSIS.addon
07.02.2011  14:49             3 170 NOTUSE~1.ADD not used.addon
04.06.2016  19:11             4 136              Readme.txt


Оно там появилось так: я в окне настроек решил изменить регистрацию для Cab, понаставил там галок, применил, получил эту строку и запостил сюда. Т.е. он короткое имя 64битного файла подставил.
Back to top
View user's profile Send private message
MVV



Joined: 15 Oct 2009
Posts: 4811
Location: Ростов-Дон

Post (Separately) Posted: Thu Jul 28, 2016 23:28    Post subject: Reply with quote

Quote:
Кстати, на счёт "ожидаемо": тотал заковычил строку, видимо, не смотря на неё вообще.

У тотала там сложная логика, т.к. изначально параметр принимал только путь к редактору, а потом добавились аргументы и т.п. Добавлю поддержку голого пути в MultiArc: если текст целиком является валидным путем к файлу, он будет запускаться.

Quote:
Т.е. он короткое имя 64битного файла подставил.

А, 64-битная версия... тогда понятно, почему короткое имя появилось.
Но у меня и тут работает верно: оба имени файла (считанный после расширения переменных и приведения к короткой форме и тот, который получен из собственного пути плагина) имеют вид MULTIA~1.WCX... Интересно, в чём беда...
_________________
TCFS2 + TCFS2Tools: Полноэкранный режим и многое другое (обсуждение)
WINCMD.RU: AskParam, CopyTree, NTLinks, Sudo, VirtualPanel…
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 ... 21, 22, 23 ... 30, 31, 32  Next
Page 22 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