Total7zip

Discuss and announce Total Commander plugins, addons and other useful tools here, both their usage and their development.

Moderators: white, Hacker, petermad, Stefan2

Post Reply
User avatar
Total7zip
Junior Member
Junior Member
Posts: 74
Joined: 2010-12-18, 07:54 UTC

Post by *Total7zip »

Erendir wrote:looks like Ctrl+PgDwn is broken (i'm using v0707):
just rename any correct 7z-archive, and try Ctrl+PgDwn on them. I'm getting "Error in packed file" message.
Maybe your PageDown key doesn't work - for example, on my laptop this key doesn't work if NumLk key is pressed.
User avatar
ghisler(Author)
Site Admin
Site Admin
Posts: 48021
Joined: 2003-02-04, 09:46 UTC
Location: Switzerland
Contact:

Post by *ghisler(Author) »

Or maybe TC has stored the settings from a previous version without "detect by content" support? In this case, you need to remove the plugin via Configuration - Options - Plugins, then install it again.
Author of Total Commander
https://www.ghisler.com
Lyx
Junior Member
Junior Member
Posts: 7
Joined: 2011-01-21, 14:46 UTC

Post by *Lyx »

While writing and deleting a regkey technically is portable, it's a dirty and errorprone solution that is barely stealthy. The clean straightforward way to make something portable, is to not let it write outside of the appdir at all, and instead store all necessary settings in the appdir.

I really don't see why you want to go the dirty hacky route. You already have settings stored in an xml file, and the CLI 7zip version already supports declaring settings as parameters. Yet still you prefer to write the settings to the registry, then let 7zip read from there, and then delete the regkey again (in the hope that no crash happens in between, because then the settings will remain in the registry).

I don't get it. Are you doing this because you think that this way an installed standalone 7zip, and total 7zip can share the same settings? This pretty much goes against the spirit of portability, which is that apps are autonomous/sandboxed, instead of relying on each other in a nonportable way. Here are some issues with that:

1. What if i do not want to share settings between both?
2. What if i do not want it to leave traces in the registry? Enable a "portable mode" option, so that it deletes the regkey again?
3. Okay, ignoring that this isn't safe in the case of a crash: So, i tell it to delete the regkey after use. Then i go to someone elses PC that has 7zip installed. I run total 7zip.... what now? Will my settings be overrided by the already existing settings? Will my settings override the owners settings? Will the settings be deleted after use, so that when i leave the PC, the owner is now missing his 7zip settings?

Oh sure, one could add more hacks to workaround such things..... which in turn may cause more problems...

...or one could just do stuff cleanly to begin with, and thus avoid any potential conflicts.
infimum
Junior Member
Junior Member
Posts: 39
Joined: 2007-12-08, 18:43 UTC

Post by *infimum »

7z.exe doesn't return graphical progress info. 7zG.exe writes into registry. Hacking these defeats the possibility of upgrading them independently. What part of that don't you get?

You should talk to the author of 7-Zip.
User avatar
Total7zip
Junior Member
Junior Member
Posts: 74
Joined: 2010-12-18, 07:54 UTC

Post by *Total7zip »

Lyx wrote:While writing and deleting a regkey technically is portable, it's a dirty and errorprone solution that is barely stealthy. The clean straightforward way to make something portable, is to not let it write outside of the appdir at all, and instead store all necessary settings in the appdir.

I really don't see why you want to go the dirty hacky route. You already have settings stored in an xml file, and the CLI 7zip version already supports declaring settings as parameters. Yet still you prefer to write the settings to the registry, then let 7zip read from there, and then delete the regkey again (in the hope that no crash happens in between, because then the settings will remain in the registry).

I don't get it. Are you doing this because you think that this way an installed standalone 7zip, and total 7zip can share the same settings? This pretty much goes against the spirit of portability, which is that apps are autonomous/sandboxed, instead of relying on each other in a nonportable way. Here are some issues with that:

1. What if i do not want to share settings between both?
2. What if i do not want it to leave traces in the registry? Enable a "portable mode" option, so that it deletes the regkey again?
3. Okay, ignoring that this isn't safe in the case of a crash: So, i tell it to delete the regkey after use. Then i go to someone elses PC that has 7zip installed. I run total 7zip.... what now? Will my settings be overrided by the already existing settings? Will my settings override the owners settings? Will the settings be deleted after use, so that when i leave the PC, the owner is now missing his 7zip settings?

Oh sure, one could add more hacks to workaround such things..... which in turn may cause more problems...

...or one could just do stuff cleanly to begin with, and thus avoid any potential conflicts.
I do use command line and do not write to registry.

Exceptions:
1. you changed "lang" parameter. I need to write new value to the registry or 7-zip wil not use it.
2. you press "Configure Packer" - the only way to pass parameters to 7zG gui is write all these parameters to registry.
3. you checked "encrypt" - in this case I will show 7zG gui and ... (see 2.)

All other operations do not use registry keys.

So if you use plugin on "someone elses PC" just do not use these three cases.
In future version I will add "portable" parameter to Total7zip.xml and plugin will refuse all operations that must write to registry.

Is this OK?
Lyx
Junior Member
Junior Member
Posts: 7
Joined: 2011-01-21, 14:46 UTC

Post by *Lyx »

Umm, so am i understanding this correctly:

total7zip, because of its reliance on 7zG, does use the registry whenever you want to pack with custom settings. In the future portable mode, i would not be able to pack with custom settings?

If i understood this correctly, then this doesn't sound very portable to me.
Lyx
Junior Member
Junior Member
Posts: 7
Joined: 2011-01-21, 14:46 UTC

Post by *Lyx »

infimum wrote:7z.exe doesn't return graphical progress info. 7zG.exe writes into registry. Hacking these defeats the possibility of upgrading them independently. What part of that don't you get?

You should talk to the author of 7-Zip.
Sorry, the part about "7z.exe doesn't return progress info" i didn't know yet.

Okay, so the situation is:

7z.exe: No progress info
7zG.exe: Not really portable in a reliable and safe way
static-linking 7z: Not upgradeable by the user

Looks like the optimum solution would be dynamic linking: 7za.dll
Are there any downsides to 7za.dll, besides of dev-effort (total7zip would need to be changed)?
diceman2037
Junior Member
Junior Member
Posts: 26
Joined: 2010-07-17, 05:41 UTC

Post by *diceman2037 »

Lyx wrote:
infimum wrote:7z.exe doesn't return graphical progress info. 7zG.exe writes into registry. Hacking these defeats the possibility of upgrading them independently. What part of that don't you get?

You should talk to the author of 7-Zip.
Sorry, the part about "7z.exe doesn't return progress info" i didn't know yet.

Okay, so the situation is:

7z.exe: No progress info
7zG.exe: Not really portable in a reliable and safe way
static-linking 7z: Not upgradeable by the user

Looks like the optimum solution would be dynamic linking: 7za.dll
Are there any downsides to 7za.dll, besides of dev-effort (total7zip would need to be changed)?
i think 7z plugin does this, but it needs some overhauls to how it handles directories for instance it can't create a directory inside a directory, and isn't as fast as total7zip due to the lack of >2 threads.
infimum
Junior Member
Junior Member
Posts: 39
Joined: 2007-12-08, 18:43 UTC

Post by *infimum »

Lyx wrote:Looks like the optimum solution would be dynamic linking: 7za.dll
Are there any downsides to 7za.dll, besides of dev-effort (total7zip would need to be changed)?
I think you better go to the 7-Zip homepage first and read and ask carefully.
http://sevenzip.sourceforge.jp/chm/cmdline/index.htm
7za.exe supports only 7z, lzma, cab, zip, gzip, bzip2, Z and tar formats. 7za.exe doesn't use external modules.
No RAR, LZH, etc. extraction, no lzma2 compression.
User avatar
Total7zip
Junior Member
Junior Member
Posts: 74
Joined: 2010-12-18, 07:54 UTC

Post by *Total7zip »

new version is released on http://www.totalcmd.net/plugring/Total7zip.html

0.8.0.9
+lister plugin is added
+content plugin is translated to all languages
+Total7zip can create 7z, bzip2, gzip, tar, wim, xz and zip archives
cmlx
Junior Member
Junior Member
Posts: 19
Joined: 2011-01-31, 02:42 UTC

Post by *cmlx »

Hi, thanks for this app, the function of "volumes split" cannot work on my TC 7.56a with the latest total7zip vision, even I set split to volumes, a file still has been compressed to ONE volume.
happytc
Junior Member
Junior Member
Posts: 42
Joined: 2011-01-21, 17:47 UTC

Post by *happytc »

bug report:

Total7zip cannot use Sub-volume compressed!
After setting, the result of compressed file was still only one file.
toysoldier
Junior Member
Junior Member
Posts: 3
Joined: 2011-01-31, 03:47 UTC

How to use Total7Zip as a content plugin

Post by *toysoldier »

Total7zip wrote:Total7zip v0.7.0.1

update: link is removed. 0.7.0.2 is ready

update your 0.6.0.2 with this wcx file and you'll CONTENT PLUGIN as well =)
Thanks for this feature. But I just don't know how to use it as a content plugin. I may, for example, want to rename in a batch manner a set of 7zips by certain info about the package contents such as #files, comprssion ratio, original size, etc.
User avatar
Total7zip
Junior Member
Junior Member
Posts: 74
Joined: 2010-12-18, 07:54 UTC

Post by *Total7zip »

cmlx wrote:Hi, thanks for this app, the function of "volumes split" cannot work on my TC 7.56a with the latest total7zip vision, even I set split to volumes, a file still has been compressed to ONE volume.

You are right - volumes setting is not saved.
But this is how original 7-zip works.

You can use volumes - just use this trick:
1. press Alt+F5, "Pack Files" dialog will be displayed.
2. choose "7z" packer
3. check "Encrypt" - if this option is set, plugin will show you settings dialog before it will create archive.
4. do not enter password in this dialog, but set your volume size in this dialog and press OK.

In other words, you can always use "Encrypt" checkbox in Total Commander to tell plugin that you want to see options dialog and add some special option only for this new archive.
toysoldier wrote:I just don't know how to use it as a content plugin. I may, for example, want to rename in a batch manner a set of 7zips by certain info about the package contents such as #files, comprssion ratio, original size, etc.
Total7zip content plugin needs manual installation.
This is because in current version of TC autoinstall can be used to install plugin only in one category.

Code: Select all

To install Total7zip as a Content plug-in you need to edit wincmd.ini 
[ContentPlugins]
2=%COMMANDER_PATH%\Plugins\WCX\Total7zip\Total7zip.wcx
2_detect=
 (Use your path and number)

To install Total7zip as a Lister plug-in you need to edit wincmd.ini 

[ListerPlugins]
0=%COMMANDER_PATH%\Plugins\wcx\Total7zip\Total7zip.wcx
(Use your path and number)
Please read "readme.rtf" section "Installation and setup" for more options.
toysoldier
Junior Member
Junior Member
Posts: 3
Joined: 2011-01-31, 03:47 UTC

Post by *toysoldier »

Total7zip wrote:
toysoldier wrote:I just don't know how to use it as a content plugin. I may, for example, want to rename in a batch manner a set of 7zips by certain info about the package contents such as #files, comprssion ratio, original size, etc.
Total7zip content plugin needs manual installation.
This is because in current version of TC autoinstall can be used to install plugin only in one category.

Code: Select all

To install Total7zip as a Content plug-in you need to edit wincmd.ini 
[ContentPlugins]
2=%COMMANDER_PATH%\Plugins\WCX\Total7zip\Total7zip.wcx
2_detect=
 (Use your path and number)

To install Total7zip as a Lister plug-in you need to edit wincmd.ini 

[ListerPlugins]
0=%COMMANDER_PATH%\Plugins\wcx\Total7zip\Total7zip.wcx
(Use your path and number)
Please read "readme.rtf" section "Installation and setup" for more options.
Just add it manually OK. Thanks so mcuh!

However, it seems not all the fields are working. For example, CompressionRatio and UnpackedSize just output nothing. Are they not included in the current version? Or, is there still anything needs to set in my wincmd.ini?
Post Reply