Page 1 of 1

7-Zip Portable w/ Shell Integration/Associations Support

Posted: Wed Sep 20, 2017 9:17 pm
by demon.devin
I give you 7-Zip Portable with shell integration and filetype association support!

Features
  • Runs the full 7-Zip file/archive manager.
  • Completely portable - runs off a USB, cloud drive (DropBox, iCloud drive, OneDrive, etc) or hard drive.
  • No need for any external software - simply download extract and run!
  • Packaged in PortableApps.com format for easy integration.
  • Associations are supported and easily customizable.
To add your own file associations, open the 7-ZipPortable.ini file. Under [Associations] add any extension you wish to support. For example:

[Associations]
1=7z
2=001
3=rar
4=zip


For a list of all supported filetypes, open AppInfo.ini and review the [Associations]Filetypes key.

Note:
  • Adding a lot of extensions can and will effect launch time.
  • Windows XP tends to cache icon resources which are inevitably visible even after exiting 7-Zip.
  • Windows 8 can be problematic and may require unlocking for some filetypes—i.e. when double-clicking on a supported file format and Windows asks you to select 7-Zip from a list. This is because Windows 8 has an implementation of a hash ID for associations.
  • Do not associate through 7-Zip! This will leave trash in the registry when you exit the program.

  • SendTo is also available for any filetypes that aren't associated but are supported for use with 7-Zip.
  • Added ability to use shell extension/context menu features. See user configuration file to enable. Do not enable this feature through 7-Zip!
The user configuration file includes the following optional settings:
[7-ZipPortable]
AdditionalParameters=
ShellExtension=true
RunLocally=false
USBDevice=false
Associations=true
Banner=false

  • AdditionalParameters: Pass additional command-line switches.
  • ShellExtension: (true, false, auto) Enable/disable Shell Extension/Context Menu features. Requires administrative rights.
  • RunLocally: (true/false) Application is copied to and executed from %TEMP% directory.
  • USBDevice: (true/false) Enable to prevent ejection/unplugging problems with removable devices. When ShellExtension is enabled, Windows Explorer tends to lock application's DLL(s). If enabled, the launcher will ensure DLL(s) are unlocked.
  • Associations: (true/false) Turn on/off support for file associations during runtime.
  • Banner: (true/false) Enable/disable initialization banner.
Visit the GitHub Project page.

Download the current release which is Revision 3 at the GitHub Project Releases page.

Re: 7-Zip Portable w/ Shell Integration/Associations Support

Posted: Wed Sep 20, 2017 10:32 pm
by Specular
So based on the bottom description it would seem the associations work by leaving the portable 7zip open? I suppose you set it to restore the previous association after closing the program.

Wondering how the shell extension works portably, does it also remove itself upon exit?

Re: 7-Zip Portable w/ Shell Integration/Associations Support

Posted: Wed Sep 20, 2017 11:00 pm
by SYSTEM
Have you suggested integrating your changes into official 7-Zip Portable to PortableApps.com developers?

Re: 7-Zip Portable w/ Shell Integration/Associations Support

Posted: Thu Sep 21, 2017 6:26 am
by demon.devin
Specular wrote:So based on the bottom description it would seem the associations work by leaving the portable 7zip open? I suppose you set it to restore the previous association after closing the program.
Yes, all associations only work during runtime; not after. And again, yes -- if 7-Zip was installed on the host machine (and even if it wasn't) prior to the launcher executing, than any and all filetype associations should revert back to the original state after execution.
Specular wrote:Wondering how the shell extension works portably, does it also remove itself upon exit?
Yes, the shell extension is also portable. If you're using this PAF on a USB removable device than inside the user configuration file (..\7-ZipPortable\7-ZipPortable.ini) set USBDevice to equal true (USBDevice=true) and the launcher will ensure the DLL is unlocked for safe removal.
SYSTEM wrote:Have you suggested integrating your changes into official 7-Zip Portable to PortableApps.com developers?
Alas, I tried but to no avail. Here's the forum topic of my sharing this on PortableApps.com. I was asked not to enhance anymore of their PAFs that they have already in their database. Here's the direct message from John T. Haller in regards to my version of 7-Zip Portable.

Re: 7-Zip Portable w/ Shell Integration/Associations Support

Posted: Fri Sep 22, 2017 3:36 am
by Midas
demon.devin wrote:
SYSTEM wrote:Have you suggested integrating your changes into official 7-Zip Portable to PortableApps.com developers?
Alas, I tried but to no avail. Here's the forum topic of my sharing this on PortableApps.com. I was asked not to enhance anymore of their PAFs that they have already in their database. Here's the direct message from John T. Haller in regards to my version of 7-Zip Portable.
Well, welcome to TPFC. Then again and as 7-zip isn't your original work, I thing topics like this would be better suited for the "Development" sub-forum. :)

Re: 7-Zip Portable w/ Shell Integration/Associations Support

Posted: Fri Sep 22, 2017 1:54 pm
by webfork
demon.devin wrote: Here's the direct message from John T. Haller in regards to my version of 7-Zip Portable.
First, we welcome posts here on the site about the topic you describe. The PA site is a little more active with PAF format expertise so I'm a little worried that posting here will mean that you won't get that kind of insight into format details, but obviously that's your call.

Second, I don't know why they didn't list it with their reply but there's actually a forum guidelines listing posted here: https://portableapps.com/forums/guidelines. I thought those rules were a bit heavy-handed but a lot of similar projects have sort of come and gone, yet PA is still around so *shrug*. Also, it's entirely possible you're dealing with frustration around their forum system. As moderator, I've certainly spent a lot of time organizing these forums to keep information categorized and easy to find. Maybe their forums are more complex to manage, I dunno.
Midas wrote:Then again and as 7-zip isn't your original work, I thing topics like this would be better suited for the "Development" sub-forum. :)
Agreed. However, that's not to suggest that the program won't end up listed on the official entry. If you take a look at the Pidgin entry (https://www.portablefreeware.com/index.php?id=1345), you'll notice that we have multiple methods to enable portability.

Re: 7-Zip Portable w/ Shell Integration/Associations Support

Posted: Sat Sep 23, 2017 5:08 pm
by Napiophelios
what's the point of having MIT GNU and WTFPL licenses
if you don't share the code?

Please just kick me in the head
if I am missing something obvious
I won't mind...

Re: 7-Zip Portable w/ Shell Integration/Associations Support

Posted: Sat Sep 23, 2017 6:05 pm
by demon.devin
Napiophelios wrote:what's the point of having MIT GNU and WTFPL licenses
if you don't share the code?
I'm not understanding what you're getting at.. all my code is shared and open to the public for viewing.

Here's my modified version of the PortableApps.com Launcher Generator which I used to create the launcher for this version 7-Zip Portable. Here's the 7-ZipPortable.ini file and the custom.nsh file which are used as well. Here's my documentation website which you can find information about the code I used to build my variant of the PortableApps.com Launcher.

Sorry for the confusion.

Re: 7-Zip Portable w/ Shell Integration/Associations Support

Posted: Sat Sep 23, 2017 6:37 pm
by Napiophelios
ha thanks
https://github.com/demondevin/7-ZipPort ... Custom.nsh
that's the one I was looking for

thanks for the brisk kick :)

Re: 7-Zip Portable w/ Shell Integration/Associations Support

Posted: Sat Sep 23, 2017 6:41 pm
by demon.devin
If you're going to recompile this version you're going to need to use my version of PAL as this 7-Zip Portable heavily makes use of the modifications I've done to it.

Re: 7-Zip Portable w/ Shell Integration/Associations Support

Posted: Sat Sep 23, 2017 9:22 pm
by Napiophelios
No I just want to see the code, I am completely mesmerized by things beyond my capacity to fully understand;
It's like the Arabic language...no clue what it means but it's nice to look at.

Re: 7-Zip Portable w/ Shell Integration/Associations Support

Posted: Sun Dec 31, 2017 8:02 am
by GlacialMan
demon.devin wrote:If you're going to recompile this version you're going to need to use my version of PAL as this 7-Zip Portable heavily makes use of the modifications I've done to it.
Hi Devin, your PAF version of 7-Zip is the best I've ever tried, thank you very much (credits also to FukenGruven aka PortableWares). Do you plan to integrate the support for Zstandard, Brotli, Lz4, Lz5 and Lizard compression?
7-Zip ZS
https://mcmilk.de/projects/7-Zip-zstd/
https://github.com/mcmilk/7-Zip-zstd/releases/

Re: 7-Zip Portable w/ Shell Integration/Associations Support

Posted: Sun Dec 31, 2017 10:43 am
by demon.devin
GlacialMan wrote:Hi Devin, your PAF version of 7-Zip is the best I've ever tried, thank you very much (credits also to FukenGruven aka PortableWares).
Thank you very much for your kind words! :D
GlacialMan wrote:Do you plan to integrate the support for Zstandard, Brotli, Lz4, Lz5 and Lizard compression?
7-Zip ZS
https://mcmilk.de/projects/7-Zip-zstd/
https://github.com/mcmilk/7-Zip-zstd/releases/
I will certainly look into it but at first glance I see that those extra binaries are meant for the new 7-Zip beta versions. I'll do some additional testing to see how stable it is but I usually don't make PAFs of beta test applications because I care about quality and cannot give support to apps that are in beta testing which should be provided by the app developer.

Re: 7-Zip Portable w/ Shell Integration/Associations Support

Posted: Sun Dec 31, 2017 3:25 pm
by GlacialMan
Thank you very much, let me know if you need a feedback, I like testing.