Menu

#2310 7zFM cannot set file association

open
nobody
None
3
2021-09-06
2021-09-05
No

If some other program wrote the following registry keys (UserChoice):

HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\FileExts.7z
HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\FileExts.001

7zFM is unable to overwrite file association to 7z / .001 extensions (even if run as Admin).
I suggest to remove the above keys when 7zFM feature is used to re-apply file association. This will fix the issue.

7-Zip 21.03 beta

Discussion

  • Anders

    Anders - 2021-09-05

    If the UserChoice hash resolves to another program that is still installed then that choice should be respected. If the other program no longer exists I believe Windows will show the Open with dialog?

    The FileExts key is of course a undocumented internal key used by shell32.

     
    • Alex Dragokas

      Alex Dragokas - 2021-09-05

      In my opinion, Windows should respect the last choice done by user.
      However, for some reason, my OS installation had some bug preventing me from re-association .7z manually via "Open with" menu (7zFM item just didn't appear on manual exe selection via open dialog).
      In such case I tried built-in feature in 7zFM menu. But, it also failed, as you can see.
      I am absolutely convinced that 7zFM should erase any available assoc "overrides" (including undocumented) when user manually decided to force association via 7zFM menu. Otherwise, those menu item makes a little sense.
      And, yeah, my OS is Win 7 x64.

       

      Last edit: Alex Dragokas 2021-09-05
      • Anders

        Anders - 2021-09-06

        I don't really disagree with you and this might work for .7z but I doubt it works for .zip. The problem is that if the userchoice is gone, Windows tends to prefer the Microsoft built-in handlers as the best default (not sure if it applies to .zip but it does for .html and http:).

        The recommendation (from Microsoft) for a long time has been to open the default programs applet when a program wants to set a default. It has been like this since Vista but it was really only enforced in Windows 10 (tightening down started in 8).

         
        • Alex Dragokas

          Alex Dragokas - 2021-09-06

          For Win 8/10 it is not enough. It requires one more little thing to do for bypassing a protection. I don't going to tell it here for known reasons. However, described way can help to fix random "bug" in Win 7 at least.
          As about Win 8/10, I don't really like Microsoft enforced those mechanism preventing devs from simplification of user actions. I understand why is it for, however, at the moment the way they implemented it looks like a half measure. If I can bypass it with simple script, anybody can. I don't use Win 10 a lot, and I just hoping one day those "set a default applet" feature doesn't bug similar way to "open with" dialog.

           

Log in to post a comment.