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 

Total7zip
Goto page Previous  1, 2, 3, 4 ... 63, 64, 65  Next
 
Post new topic   Reply to topic    Total Commander Forum Index -> Плагины Total Commander printer-friendly view
View previous topic :: View next topic  
Author Message
Total7zip



Joined: 27 Nov 2010
Posts: 287

Post (Separately) Posted: Tue Nov 30, 2010 00:05    Post subject: Reply with quote

ссылка работает, проверил

про exe - чтоб плагин открыл exe файл, этот файл должен быть самораспаковывающимся архивом. например, вот проверил на таком дистрибутиве - http://portableapps.com/news/2010-11-24_-_notepadpp_portable_5.8.5
открывает.
если можно - дайте ссылку на тот ехе, который у вас не открывается.
Back to top
View user's profile Send private message
flm



Joined: 09 Dec 2007
Posts: 467

Post (Separately) Posted: Tue Nov 30, 2010 00:08    Post subject: Reply with quote

Total7zip
Упаковка будет поддерживаться?
Nikola Ant
У меня нормально скачалось.
_________________
cogito ergo sum
http://www.yakimchuk.ru/questions.htm - Как правильно задавать вопросы
Back to top
View user's profile Send private message
Total7zip



Joined: 27 Nov 2010
Posts: 287

Post (Separately) Posted: Tue Nov 30, 2010 00:22    Post subject: Reply with quote

упаковка отличается тем, что у нее есть множество параметров.
дублировать интерфейс 7zip мне не хочется,
если есть возможность вызывать диалог настройки из самого 7zip, упаковка будет.
Back to top
View user's profile Send private message
MVV



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

Post (Separately) Posted: Tue Nov 30, 2010 00:38    Post subject: Reply with quote

Total7zip wrote:
дублировать интерфейс 7zip мне не хочется,
если есть возможность вызывать диалог настройки из самого 7zip, упаковка будет.
Думаю, можно научить плагин вызывать 7zG.exe так, как это делает расширение оболочки 7зипа - тогда и диалог настроек будет, и диалог упаковки, и упаковка в фоне, и всё это из тотала. Только разобраться, как он это делает - хорошо хоть, исходники есть. А довесок в 200 кило к дллке в 700 для функции упаковки - не так и много, тем более у многих 7зип стоит на компе.
_________________
TCFS2 + TCFS2Tools: Полноэкранный режим и многое другое (обсуждение)
WINCMD.RU: AskParam, CopyTree, NTLinks, Sudo, VirtualPanel…
Back to top
View user's profile Send private message
Reflector



Joined: 29 Nov 2009
Posts: 56

Post (Separately) Posted: Tue Nov 30, 2010 01:03    Post subject: Reply with quote

Total7zip wrote:

про exe - чтоб плагин открыл exe файл, этот файл должен быть самораспаковывающимся архивом.

Например, вот это http://www.manutd8.com/SopCast-3.2.4.zip сам 7z открывает, а плагин нет.

Quote:

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

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

Quote:

Думаю, можно научить плагин вызывать 7zG.exe так, как это делает расширение оболочки 7зипа - тогда и диалог настроек будет, и диалог упаковки, и упаковка в фоне, и всё это из тотала.

Я так и делал, только в 7zG.exe нет диалога настроек. Но это самый простой вариант, получить от тотала список файлов и передать его 7zG...
Back to top
View user's profile Send private message
jentoso



Joined: 20 Dec 2007
Posts: 346

Post (Separately) Posted: Tue Nov 30, 2010 07:12    Post subject: Reply with quote

Если я правильно понял, то конфиг 7zipUnicode.ini не поддерживает %commander_path% для загрузки dll?
Back to top
View user's profile Send private message
MVV



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

Post (Separately) Posted: Tue Nov 30, 2010 09:43    Post subject: Reply with quote

Reflector wrote:
Quote:

Думаю, можно научить плагин вызывать 7zG.exe так, как это делает расширение оболочки 7зипа - тогда и диалог настроек будет, и диалог упаковки, и упаковка в фоне, и всё это из тотала.

Я так и делал, только в 7zG.exe нет диалога настроек. Но это самый простой вариант, получить от тотала список файлов и передать его 7zG...

В том и дело, что он там есть. Достаточно посмотреть в редакторе ресурсов. Вопрос лишь в том, как его вызвать (ведь расширение оболочки как-то запускает 7zG.exe с вызовом диалога), и как передать ему список файлов при таком способе вызова - расширение оболочки использует какие-то хитрые (возможно, традиционные расширениям оболочки, но незнакомые мне) средства.

Сравнил командные строки при вызове компрессии напрямую и через диалог - во втором случае используется параметр -ad - попробуй использовать его в своей командной строке, возможно, диалог отобразится.

Проверил - простенькая кнопочка для 7zG.exe со следующими параметрами работает на ура (отображается диалог с предлагаемым именем архива и путем к нему, при этом во время архивации используется системная временная папка):
Code:
a -ad -scsUTF-8 "%T%O.7z" @%UL

Так что такой прием вполне можно использовать и из плагина - при этом весь процесс архивирования в тотале будет занимать считанные секунды - просто построение файла-списка, который потом будет передаваться архиватору 7zG.exe с указанными выше параметрами и удаляться после завершения операции. Единственное, что список придется строить в UTF-8 - это единственный Юникод, который допускает в файлах списков 7-Zip. Но не так и сложно преобразовать UTF-16 в UTF-8 - там есть вполне компактный алгоритм, да и стандартная системная функция WideCharToMultiByte умеет делать это.
_________________
TCFS2 + TCFS2Tools: Полноэкранный режим и многое другое (обсуждение)
WINCMD.RU: AskParam, CopyTree, NTLinks, Sudo, VirtualPanel…


Last edited by MVV on Tue Nov 30, 2010 10:17; edited 1 time in total
Back to top
View user's profile Send private message
Total7zip



Joined: 27 Nov 2010
Posts: 287

Post (Separately) Posted: Tue Nov 30, 2010 10:15    Post subject: Reply with quote

jentoso wrote:
Если я правильно понял, то конфиг 7zipUnicode.ini не поддерживает %commander_path% для загрузки dll?

прямо именно %COMMANDER_PATH% не поддерживается (пока).
но вы можете писать относительный путь, считая что каталог командера это ваш текущий каталог.
например, у меня в одной папке на флешке рядом находятся
Code:

total commander
archive\7-Zip

конфиг выглядит так
Code:

<?xml version="1.0" ?>
<settings>
    <path_7z_dll>..\archive\7-Zip\7z.dll</path_7z_dll>
    <passwords save="1">
        <password val="пароль1" />
        <password val="пароль2" />
    </passwords>
</settings>


с такими настройками плагин запускается у меня без проблем на разных компах, несмотря на то, что флешка получает разные имена.

командер, кстати, запускаю с такими параметрами
Code:
 /I=".\wincmd.ini" /F=".\wcx_ftp.ini"

т.е. настройки он хранит в своей папке.
Back to top
View user's profile Send private message
Avada



Joined: 01 Aug 2008
Posts: 10236
Location: Россия, Саратов

Post (Separately) Posted: Tue Nov 30, 2010 10:23    Post subject: Reply with quote

Total7zip wrote:
т.е. настройки он хранит в своей папке

[off]
В данном случае предпочтительнее ключ UseIniInProgramDir=7 в секции [Configuration] файла wincmd.ini в рабочем каталоге TC. Запуск с параметрами обычно используется для файлов конфигурации с нестандартным именем или нестандартным местоположением.
[/off]
_________________
Даже самая богатая фантазия
Не представит себе наши безобразия.
Back to top
View user's profile Send private message
MVV



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

Post (Separately) Posted: Tue Nov 30, 2010 10:36    Post subject: Reply with quote

MVV wrote:
Проверил - простенькая кнопочка для 7zG.exe со следующими параметрами работает на ура (отображается диалог с предлагаемым именем архива и путем к нему, при этом во время архивации используется системная временная папка):
Code:
a -ad -scsUTF-8 "%T%O.7z" @%UL

Единственное быть может неудобство связано с тем, что 7zG запоминает в реестре последние использованные параметры. Но зато можно изменять их прямо в разделе реестра HKEY_CURRENT_USER\Software\7-Zip\Compression перед вызовом 7zG - тогда будет использоваться нужный формат архива - например, 7z (заодно можно задавать и нужные предустановленные параметры сжатия).
_________________
TCFS2 + TCFS2Tools: Полноэкранный режим и многое другое (обсуждение)
WINCMD.RU: AskParam, CopyTree, NTLinks, Sudo, VirtualPanel…
Back to top
View user's profile Send private message
gora



Joined: 30 Dec 2004
Posts: 442
Location: Иваново

Post (Separately) Posted: Tue Nov 30, 2010 12:10    Post subject: Reply with quote

Total7zip wrote:
появился конфиг - 7zipUnicode.ini

отредактируйте его, если вы хотите настроить путь к 7z.dll
Уточните:
- путь должен быть абсолютный?
- путь может содержать системные переменные, например, %ProgramFiles% ?
- может ли плагин работать с х64 версией 7z.dll установленного в системе 7-Zip ?
- правильно ли он будет определять %ProgramFiles% на х64 системе с учетом того, что ТС х86 приложение?

Из плагина лучше исключить 7z.dll, т.к. у пользователя архиватор обычно уже установлен и зачастую более новой версии, чем будет со временем в Вашем плагине. ИМХО.
_________________
Win7 SP1 Ultimate x64, TC8.52a x64
Back to top
View user's profile Send private message
Total7zip



Joined: 27 Nov 2010
Posts: 287

Post (Separately) Posted: Tue Nov 30, 2010 12:22    Post subject: Reply with quote

ответ про абсолютные и относительные пути чуть выше
http://forum.wincmd.ru/viewpost.php?p=70677&sid=e04cd36f8003f36d842f1ac6a0c3e1ac

про 64 бита - насколько я понимаю 32 битное приложение не может использовать 64 битные dll.

а тотал командер у нас пока 32 битный.
Back to top
View user's profile Send private message
mrmerak



Joined: 20 Aug 2007
Posts: 441

Post (Separately) Posted: Tue Nov 30, 2010 13:09    Post subject: Reply with quote

Total7zip
может лучше плагин назвать как твой ник? Это круто. А 7zipUnicode - так се

и да, %COMMANDER_PATH% будет в след. версии?
_________________
TC 9.51 | Win10 1903
Back to top
View user's profile Send private message
gora



Joined: 30 Dec 2004
Posts: 442
Location: Иваново

Post (Separately) Posted: Tue Nov 30, 2010 13:10    Post subject: Reply with quote

Total7zip wrote:
ответ про абсолютные и относительные пути чуть выше
http://forum.wincmd.ru/viewpost.php?p=70677&sid=e04cd36f8003f36d842f1ac6a0c3e1ac

про 64 бита - насколько я понимаю 32 битное приложение не может использовать 64 битные dll.

а тотал командер у нас пока 32 битный.
Там нет ответа на мои вопросы. Относительный путь меня не очень устраивает ибо ТС у меня на не системном диске, а 7-Zip установлен по умолчанию - на системный. Относительные пути городить здесь не вариант.
Про использование х64 7z.dll, как я понял, возможности не будет. Значит при упаковке словарь будет ограничен 128МБ даже при наличии х64 системы с RAM=8ГБ. Это печально. Придется пользоваться архиватором, а не плагином...
_________________
Win7 SP1 Ultimate x64, TC8.52a x64
Back to top
View user's profile Send private message
Reflector



Joined: 29 Nov 2009
Posts: 56

Post (Separately) Posted: Tue Nov 30, 2010 14:33    Post subject: Reply with quote

MVV wrote:

Проверил - простенькая кнопочка для 7zG.exe со следующими параметрами работает на ура (отображается диалог с предлагаемым именем архива и путем к нему, при этом во время архивации используется системная временная папка):
Code:
a -ad -scsUTF-8 "%T%O.7z" @%UL

Так что такой прием вполне можно использовать и из плагина - при этом весь процесс архивирования в тотале будет занимать считанные секунды - просто построение файла-списка, который потом будет передаваться архиватору 7zG.exe с указанными выше параметрами и удаляться после завершения операции. Единственное, что список придется строить в UTF-8 - это единственный Юникод, который допускает в файлах списков 7-Zip. Но не так и сложно преобразовать UTF-16 в UTF-8 - там есть вполне компактный алгоритм, да и стандартная системная функция WideCharToMultiByte умеет делать это.

И я проверил Smile Дело в том, что я писал юникодный плагин под 7z больше года назад, он во многом похож на плагин от Total7zip, т.к. также открывает все типы файлов открываемые 7z, но при этом используя консольную версию для получения информации об архивах и 7zG.exe для паковки/распаковки(автоматически выбирая x64 версию на x64 системах), т.е. фактически тоже можно без проблем копировать эти файлы от более новых версий и получать поддержку новых типов файлов. Но есть одна проблема: у 7z очень убогая командная строка, потому вытянуть из архива вложенные каталоги можно только с полными путями. Например, если архив выглядит как "aaa\bbb\ccc", то разархивировав "ссс" я получаю на диске все равно "aaa\bbb\ccc". В раре для этого случая есть ключ -ap, в 7z его видимо не будет никогда, т.к. хоть автора постоянно просят его добавить, он просто не понимает зачем он вообще нужен... И мне пришлось искать обходные пути, самым простым оказалось использование CreateSymbolicLink, тогда можно автоматически переадресовать распаковку на правильный путь, но этот метод работает начиная с Висты, при распаковке создается временный каталог и существует небольшая вероятность того, что такой каталог уже был, тогда облом... Понятно, что до нахождения более приемных вариантов решения данной проблемы, плагином пользовался только я сам Smile Так вот, когда я его писал, то специально искал какие у 7zG.exe ключи и ничего про диалог настроек не нашел... А 7zG.exe я как раз и передавал список файлов в UTF-8, правда предварительно усекая его, т.к., например, если дать паковать один каталог с 10000 файлов, то тотал передаст по одному все 10000 и 7z на таком списке основательно задумается, но можно этот список преобразовать в одну строку с базовым каталогом.
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 ... 63, 64, 65  Next
Page 3 of 65

 
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