You are here

7-Zip w/ Shell Integration/Associations Support

20 posts / 0 new
Last post
demon.devin
demon.devin's picture
Offline
Last seen: 3 years 7 months ago
Developer
Joined: 2007-08-02 09:04
7-Zip w/ Shell Integration/Associations Support

Here's a 7-Zip PAF that I just finished. It was compiled using a modified version of the PA.c Launcher that I've been developing.

This is the latest stable build v16.04 with both 32-bit and 64-bit variants included.

Some Features Include:

  • Better language handling.
  • Associations are supported and easily customizable. To add your own file associations, open the 7-ZipPortable.ini file. Under [Associations] add any extensions 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
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, PAF will ensure DLL(s) are unlocked.
  • Banner: (true/false) Enable/disable initialization banner.

For additional information refer to the ReadMe file on the GitHub project page.

GitHub Project Page

Download 7-Zip Portable v16.04 Revision 3 from GitHub Releases (2.61 MB)

  • MD5: 1B9A44C355F250209449D652F46C3895
  • CRC32: BBD32745

New Updates/Features in Revision 3

  • Updated the installer code to support giving the user the ability to choose which version of 7-Zip they'd like to install; 32-bit, 64-bit, and/or both variants.
  • Gave the user the option to turn on/off support for file associations in the optional user configuration file.
Gord Caswell
Gord Caswell's picture
Offline
Last seen: 4 months 6 days ago
DeveloperModerator
Joined: 2008-07-24 18:46
Already available officially

This is already available as an official release - what's the benefit of your build?

demon.devin
demon.devin's picture
Offline
Last seen: 3 years 7 months ago
Developer
Joined: 2007-08-02 09:04
Read what I wrote under the

Read what I wrote under the added features section. I don't expect you guys to replace your official one. I just wanted other people to test my enhancements as I cannot test for everything myself.

Plus, I was trying to see if my version of PAL compiles correctly.

daemon.devin

3D1T0R
3D1T0R's picture
Offline
Last seen: 2 years 8 months ago
Developer
Joined: 2006-12-29 23:48
Should change the topic title

You should make this information visible in the title of the thread. i.e. something along the lines of "7-Zip 16.04 with shell integration".

~3D1T0R

demon.devin
demon.devin's picture
Offline
Last seen: 3 years 7 months ago
Developer
Joined: 2007-08-02 09:04
Done.

Changed the title accordingly as you suggested..

daemon.devin

John T. Haller
John T. Haller's picture
Offline
Last seen: 5 hours 51 min ago
AdminDeveloperModeratorTranslator
Joined: 2005-11-28 22:21
Please stop posting more for now

We have had a policy against cloning of apps in our directory for a while now as it's confusing to say the least. I see you've added a modded Notepad++ as well, so I'd like to ask you to stop posting before you add others to the forum.

As for the actual meat of the addition of file associations to launchers, I don't think it's a route I like going down. For starters, it won't really work for over 50% of our users due to the changes in Windows 8 and up (yup, we're at over 50% using Windows 8/8.1/10) without them manually confirming every one on launch of an app via the Windows UI and it may leave the host PC is a partially broken state later. That's why we haven't added it to the platform proper. Additionally, it doesn't work when the app is closed, the main time you'd want a portable association to be there. When an an is open, you can just drag the file to the app. But that would be a larger discussion for its own topic in the forum. If you'd like to discuss it as an official addition, please create a new topic just for that.

Sometimes, the impossible can become possible, if you're awesome!

demon.devin
demon.devin's picture
Offline
Last seen: 3 years 7 months ago
Developer
Joined: 2007-08-02 09:04
My Apologies...

I'll cease and desist henceforth.

Like I had already stated before, I wasn't expecting you to consider these as an official option. I just wanted people to test my hard work and report back to me with the results. I can see that it's a problem for any real sort of portable development here so I'll quit while I'm ahead.

Thanks for the opportunity anyway.

daemon.devin

John T. Haller
John T. Haller's picture
Offline
Last seen: 5 hours 51 min ago
AdminDeveloperModeratorTranslator
Joined: 2005-11-28 22:21
More About Discussion vs Concept, Let's Expand On It

To be clear, it's more about the packaging and discussion than the concept. If you're proposing this as an extension to PAL, please use a single post to encompass that discussing the additions and why they'd be a good fit along with some pre-built drop-in launchers (and associated INI/help files) for both 7-Zip Portable and Notepad++ Portable. Posting them as their own package to replace an existing app is where things get confusing as some users may think they're a 'competing' app or a test of an upcoming official release.

On the same note, if you have some ideas around PA.c Installer handling 32/64bit installs, please create a topic around that with an example installer for, say, 7-Zip. We can discuss the ins and outs of it in a contained forum topic and get some other developers and users to weigh in. I've been considering it as an advanced option in the platform (allowing the user to select between dual-mode as the default, 32-bit only, or 64-bit only) but not having it show in the actual installer UI for several reasons (most users don't understand 32/64-bit, hiding it within a standard/advanced installer UI may make people thing there's bundleware hidden within and they need to click advanced and turn it off, etc).

Sometimes, the impossible can become possible, if you're awesome!

demon.devin
demon.devin's picture
Offline
Last seen: 3 years 7 months ago
Developer
Joined: 2007-08-02 09:04
Seriously?

You don't have much faith in people do you? I mean why wouldn't people know about 32/64-bit? Why couldn't we write a paragraph explaining what it is or link to another webpage which better explains it for the users you think that don't understand? As far as bundleware goes; if it's being released from your brand than nobody will ever think an installer contains malicious apps. You're code signing should be a guarantee to that effect.

daemon.devin

John T. Haller
John T. Haller's picture
Offline
Last seen: 5 hours 51 min ago
AdminDeveloperModeratorTranslator
Joined: 2005-11-28 22:21
Seriously. We're not most people

When working on software for a wide audience, it's important to remember that we're not most people. We have millions of folks of all types that use PortableApps.com including students, military personnel, backpackers, libraries who distribute it for the general public, elder facility residents, business folks as a backup for presentation facilities, etc. Plus, the folks who move around with their portable apps are often using machines where they don't know ahead of time if it's 32 or 64-bit, so defaulting to both is generally best (folks who use it on a USB and work at school computer labs, hotel business centers, parent's PCs, etc.).

As for the bundleware question, we get asked it a lot. Most free software goes the bad bundleware route (installing an antivirus or Google Chrome to make money). The only time you ever encounter an installer with an "advanced" mode or with a "more options" button outside a select set of open source software these days is for apps that do bundleware and try to hide it. And nearly all of those bundleware packages are also digitally signed (see CCleaner's last installer that auto-installed Chrome as the default browser without a warning unless you clicked 'more').

You know the PortableApps.com brand means it will always be fully portable, work on every PC, and is scanned with multiple antivirus engines to ensure it doesn't contain any bundleware/malware, but the average user doesn't. So, making it as easy as possible with as few moments that will confuse someone and cause them to give up or not trust to install it is a big plus.

There are ways we could handle 32/64 at both the platform and installer level without making the user make the decision by default, but I think they're best confined to a forum topic specifically about that as opposed to tacked onto this.

Sometimes, the impossible can become possible, if you're awesome!

demon.devin
demon.devin's picture
Offline
Last seen: 3 years 7 months ago
Developer
Joined: 2007-08-02 09:04
Okay.

You're right about reaching a much more broad audience.

Back to the bundleware issue; here's a couple screenshots of my 7-Zip installer right after the end-user accepts the EULA. There's no advanced option available. You're forced to choose one or the other or both. You'll notice in the first screenshot it says to hover over an option for a description of an option. The other two screenshots will show you the description of both options made available. I cannot see how this will be confused with bundleware.

7-Zip Installer Image 01

7-Zip Installer Image 02

7-Zip Installer Image 03

daemon.devin

John T. Haller
John T. Haller's picture
Offline
Last seen: 5 hours 51 min ago
AdminDeveloperModeratorTranslator
Joined: 2005-11-28 22:21
The Other Issue

That's the first issue: 32-bit and 64-bit. You're asking many users to make a decision for which they have zero reference. They have no idea what those options even are. So, it should never be presented to most users. When users encounter a decision for which they don't understand the choices, they generally back out of it or close it, at least in mobile and web UI usability studies. One way around this would be to hide it under an 'advanced' option or similar, but that runs into the bundleware issue.

This is a bigger discussion with other options and should likely be had in its own specific forum topic so others can participate.

Sometimes, the impossible can become possible, if you're awesome!

Jeff Savage
Offline
Last seen: 5 years 4 months ago
Joined: 2014-10-05 03:44
Just throwing my 2 cents in.

I personally like the idea of having an option to select one or both 32 bit and 64 bit. A user would not need any knowledge at all if we just put (default) next to the 32 bit option. Anyone who doesn't know the difference would see that 32 bit is default and would most likely just leave it as is and continue thru the setup.

I had to have a friend of mine, DoomStorm, write custom nsh for RetroArch, because the current version of PAF lacks this feature. The issue here is RetroArch has certain cores (emulators)(specifically dolphin) that only run on 64 bit versions of Windows. With the current implementation, I have to have 2 apps for both the 32 bit and the 64 bit, which means 2 sets of data folders. If you add this feature in, I could reduce it to 1 app like it should be, with 1 data folder, and not have to rely on some nsh I can't make sense of, but nonetheless grateful my friend help me with.

Have an awesome day! Biggrin
Jeff Savage ~ BetaLeaf

John T. Haller
John T. Haller's picture
Offline
Last seen: 5 hours 51 min ago
AdminDeveloperModeratorTranslator
Joined: 2005-11-28 22:21
Separate Issue

Something like your example is a separate issue and for that specific app, we'd likely do a dual mode app with separate settings files for 32-bit and 64-bit. Additionally, the default for apps like 7-Zip would be 32+64-bit with automatic switching as we already do in 7-Zip.

Sometimes, the impossible can become possible, if you're awesome!

Maytsch
Offline
Last seen: 1 year 8 months ago
Joined: 2015-06-28 05:51
well....imo 32-64bit selector

well....imo 32-64bit selector is evolution.....i think students, military personnel, backpackers, libraries who distribute it for the general public, elder facility residents, business folks as a backup for presentation facilities, etc. , NSA agents & CiA operaters approve....

demon.devin
demon.devin's picture
Offline
Last seen: 3 years 7 months ago
Developer
Joined: 2007-08-02 09:04
7-Zip Portable v16.04 - Rev.

7-Zip Portable v16.04 - Rev. 3 is now available.

The major thing with this revision is the fact that when you are installing this PAF, you are asked which version of 7-Zip you would like to install; 32-bit, 64-bit, and/or both variants.

Enjoy. Smile

daemon.devin

Drazick
Offline
Last seen: 1 week 3 days ago
Joined: 2010-09-06 06:36
Like the Ability to Choose

This is a great idea to chose!

I wish it was like that in Firefox.

demon.devin
demon.devin's picture
Offline
Last seen: 3 years 7 months ago
Developer
Joined: 2007-08-02 09:04
Don't get your hopes up.

Don't get your hopes up.

daemon.devin

John T. Haller
John T. Haller's picture
Offline
Last seen: 5 hours 51 min ago
AdminDeveloperModeratorTranslator
Joined: 2005-11-28 22:21
Why Not?

As I already mentioned above, the ability to select 32/64/both was already being discussed as an advanced option. We just can't present it directly to users by default.

Sometimes, the impossible can become possible, if you're awesome!

John T. Haller
John T. Haller's picture
Offline
Last seen: 5 hours 51 min ago
AdminDeveloperModeratorTranslator
Joined: 2005-11-28 22:21
Selectable 32-bit, 64-bit, and both installers

I've created a forum topic for discussion of selectable installers over here: https://portableapps.com/node/56807

Please continue any discussion there so other developers and advanced users can participate.

Sometimes, the impossible can become possible, if you're awesome!

Log in or register to post comments