View previous topic :: View next topic |
Author |
Message |
Skif_off
Joined: 28 Nov 2012 Posts: 1232
|
(Separately) Posted: Mon May 30, 2016 16:44 Post subject: |
|
|
MVV wrote: | избавиться от SHFileOperation |
А как тогда быть с диалогами? |
|
Back to top |
|
|
MVV
Joined: 15 Oct 2009 Posts: 4811 Location: Ростов-Дон
|
|
Back to top |
|
|
Skif_off
Joined: 28 Nov 2012 Posts: 1232
|
(Separately) Posted: Mon May 30, 2016 21:38 Post subject: |
|
|
MVV
Ступил Беглый гуглопоск вынес на
Quote: | SHFileOperation копирует, перемещает, переименовывает или удаляет объект в файловой системе. Вместо незаметного выполнения действия, как это делают обычные функции API, SHFileOperation использует подсказки диалогового окна оболочки. |
|
|
Back to top |
|
|
MVV
Joined: 15 Oct 2009 Posts: 4811 Location: Ростов-Дон
|
|
Back to top |
|
|
MVV
Joined: 15 Oct 2009 Posts: 4811 Location: Ростов-Дон
|
(Separately) Posted: Wed Jun 01, 2016 00:35 Post subject: |
|
|
Исправил баг, теперь должно работать.
MultiArc 1.4.2.122
Собственно, условия воспроизведения ситуации:
1. Извлекать файлы обязательно из подкаталога архива.
2. Извлекать в каталог с таким же именем, как у подкаталога архива, в котором они находятся.
3. Немного уличной магии (иногда воспроизводится не с первой попытки, а после нескольких). _________________ TCFS2 + TCFS2Tools: Полноэкранный режим и многое другое (обсуждение)
WINCMD.RU: AskParam, CopyTree, NTLinks, Sudo, VirtualPanel… |
|
Back to top |
|
|
MVV
Joined: 15 Oct 2009 Posts: 4811 Location: Ростов-Дон
|
(Separately) Posted: Sat Jun 04, 2016 20:41 Post subject: |
|
|
На оффоруме сообщили, что MultiArc слишком часто запрашивает список файлов в архиве, оказалось, что при каждом открытии архива. Поправил эту байду, теперь список запрашивается, только когда он реально нужен.
MultiArc MVV Build 1.4.2.134:
* теперь список файлов в архиве запрашивается только при необходимости, а не при каждом открытии архива
* улучшена обработка неправильных дат (4-значные годы < 1980 отображаются как 1980, а не как 20xx)
Кому не лень, проверьте, что всё работает. _________________ TCFS2 + TCFS2Tools: Полноэкранный режим и многое другое (обсуждение)
WINCMD.RU: AskParam, CopyTree, NTLinks, Sudo, VirtualPanel… |
|
Back to top |
|
|
Skif_off
Joined: 28 Nov 2012 Posts: 1232
|
(Separately) Posted: Sun Jun 05, 2016 00:22 Post subject: |
|
|
MVV wrote: | Поправил эту байду, теперь список запрашивается, только когда он реально нужен. |
Прошу прощения за любопытство, не уловил - это как? Захожу в архив - получаю список, выхожу, захожу снова - снова получаю список. |
|
Back to top |
|
|
MVV
Joined: 15 Oct 2009 Posts: 4811 Location: Ростов-Дон
|
(Separately) Posted: Sun Jun 05, 2016 01:43 Post subject: |
|
|
Ну, раз ничего не заметил, это уже говорит о том, что я по крайней мере ничего не сломал.
Проблема у пользователя на оффоруме была в том, что перед тем, как начать добавлять файлы в архив, мультиарк запрашивал список файлов архива, и это занимало много времени, т.к. архив был очень большим.
Вот он и спросил, зачем список запрашивается дважды, и можно ли что-то с этим сделать, ничего не сломав.
Поковыряв, я выяснил, что MultiArc при каждой инициализации объекта CArchiverEngine, взаимодействующего с архиватором, запрашивал список файлов, даже если этот список не был нужен для последующих действий. Собственно, в упомянутом выше случае листинг запрашивался сначала при открытии архива тоталом для получения списка файлов (тут список реально использовался), а затем уже сам MultiArc инициализировал CArchiverEngine для вызова команды добавления файлов в архив (и тут список файлов в архиве запрашивался впустую).
Теперь список файлов запрашивается только тогда, когда он реально нужен: при перечислении тоталом файлов в архиве (при первом вызове ReadHeader[Ex]) и при удалении файлов из архива (для построения корректного списка удаляемых файлов). Разница может быть заметна, например, при добавлении файлов в очень большой архив, ну или если просто посмотреть, в каких случаях старый и новый MultiArc дергает архиватор. _________________ TCFS2 + TCFS2Tools: Полноэкранный режим и многое другое (обсуждение)
WINCMD.RU: AskParam, CopyTree, NTLinks, Sudo, VirtualPanel… |
|
Back to top |
|
|
Flasher
Joined: 06 Nov 2009 Posts: 14229 Location: Москва
|
(Separately) Posted: Fri Jul 08, 2016 20:11 Post subject: |
|
|
Flasher wrote: | Ещё проге не хватает поддержки ... ключей с именем архива и методом упаковки.
Я так понял, что в cab-ы лучше чем mscab ничего не жмёт (makecab, 7-zip и т.д.). Что плохого в тихом режиме и указании имени в комстроке? | Нашёл таки родную утилиту (в этом пакете последняя). Казалось бы то, что нужно, но с папками не работает и с @%L/%F вместо %S выдаёт ошибку.
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 |
|
|
funduk
Joined: 16 Aug 2005 Posts: 1513 Location: Санкт-Петербург
|
(Separately) Posted: Wed Jul 27, 2016 22:36 Post subject: |
|
|
Кто-нибудь поддерживает аддоны к мультиарку в актуальном состоянии? В основном интересуют те, которые для инсталляторов. Может ли он эти аддоны выложить на 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 |
|
|
MVV
Joined: 15 Oct 2009 Posts: 4811 Location: Ростов-Дон
|
(Separately) Posted: Thu Jul 28, 2016 20:25 Post subject: |
|
|
funduk,
1) При ручной вставке секции в Multiarc.ini аддон работает? В исходниках вроде всё консистентно: чтение и запись через системные функции чтения/записи INI. Следует учитывать, что эти функции при чтении убирают внешние кавычки, если они есть, и добавляют их при сохранении, если параметр начинается/заканчивается пробелами или кавычками. Поэтому правило: если в строке есть кавычки или пробелы в начале или конце, необходимо заключить её в дополнительные кавычки.
2) Регистрируются конкретные расширения, перечисленные в списке расширений в аддоне. Тут нужен пример аддона...
3) Т.к. параметр Editor в wincmd.ini содержит не просто путь, а комстроку, то путь к редактору с пробелами надо обязательно заключать в кавычки. Кроме того, см. ответ на п.п. 1. _________________ TCFS2 + TCFS2Tools: Полноэкранный режим и многое другое (обсуждение)
WINCMD.RU: AskParam, CopyTree, NTLinks, Sudo, VirtualPanel… |
|
Back to top |
|
|
funduk
Joined: 16 Aug 2005 Posts: 1513 Location: Санкт-Петербург
|
(Separately) Posted: Thu Jul 28, 2016 21:11 Post subject: |
|
|
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 |
|
|
MVV
Joined: 15 Oct 2009 Posts: 4811 Location: Ростов-Дон
|
(Separately) Posted: Thu Jul 28, 2016 21:51 Post subject: |
|
|
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 |
|
|
funduk
Joined: 16 Aug 2005 Posts: 1513 Location: Санкт-Петербург
|
(Separately) Posted: Thu Jul 28, 2016 22:49 Post subject: |
|
|
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 |
|
|
MVV
Joined: 15 Oct 2009 Posts: 4811 Location: Ростов-Дон
|
(Separately) Posted: Thu Jul 28, 2016 23:28 Post subject: |
|
|
Quote: | Кстати, на счёт "ожидаемо": тотал заковычил строку, видимо, не смотря на неё вообще. |
У тотала там сложная логика, т.к. изначально параметр принимал только путь к редактору, а потом добавились аргументы и т.п. Добавлю поддержку голого пути в MultiArc: если текст целиком является валидным путем к файлу, он будет запускаться.
Quote: | Т.е. он короткое имя 64битного файла подставил. |
А, 64-битная версия... тогда понятно, почему короткое имя появилось.
Но у меня и тут работает верно: оба имени файла (считанный после расширения переменных и приведения к короткой форме и тот, который получен из собственного пути плагина) имеют вид MULTIA~1.WCX... Интересно, в чём беда... _________________ TCFS2 + TCFS2Tools: Полноэкранный режим и многое другое (обсуждение)
WINCMD.RU: AskParam, CopyTree, NTLinks, Sudo, VirtualPanel… |
|
Back to top |
|
|
|
|
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
|