winmerge icon indicating copy to clipboard operation
winmerge copied to clipboard

Windows 11 *Pro* - WinMerge NOT in Explorer's context menu

Open David-Maisonave opened this issue 2 years ago • 5 comments

After installing WinMerge on Windows 11 Pro installation, WinMerge did not appear in Windows File Explorer context menu.

Setup:

OS: Windows 11 Pro WinMerge Ver: 2.16.22 WinMerge installed with [Enable Explore context menu] selected.

Workaround:

Initial Workaround Attempt:

I found the following post, which help me fix the issue. Originally posted by @sdottaka in https://github.com/WinMerge/winmerge/discussions/1152#discussioncomment-2027043

Fixing it wasn't straight forward, even with the available options.

OptionsMenuAfterInstallIntoWin11

I performed the following steps before getting it right.

  • Clicked on Register shell extension for Windows 11. Before clicking this button, the "Enable advanced menu" option was greyed out, and could not be selected.
    • Results:
      • Explorer did NOT display a WinMerge context menu.
      • Enable advanced menu option greyed out.
  • Clicked on Register shell extension.
    • Results:
      • WinMerge listed in context menu option (by itself).
      • Enable advanced menu option available for selection.
  • Selected Enable advanced menu option, and clicked on Register shell extension for Windows 11.
    • Results:
      • WinMerge listed in context menu option (by itself).
      • No advance context menu option listed.
  • Selected Enable advanced menu option, clicked on Unregister shell extension, and clicked on Register shell extension for Windows 11. Do NOT click OK on the Options window.
    • Results:
      • Explorer did NOT display a WinMerge context menu.
      • Enable advanced menu option greyed out.
      • Add to context menu option greyed out.
  • After performing previous step, Click OK on Options window, to close it.
    • Results:
      • WinMerge listed in context menu option.
      • Advance WinMerge context menu option listed.

I listed the above steps to show how much work users may go through before getting the advance context menu option working.

Workaround with Minimal Steps

  1. Clicked on Register shell extension.
  2. Selected Enable advanced menu option.
  3. Clicked on Register shell extension for Windows 11.
  4. On the Options window, Click OK, to close the window.

Summary

  • The context menu if selected during setup, should get configured without having to go through extra steps to fix it.
  • I believe this issue is unique to Windows 11 Pro.
    • I've installed WinMerge on many Windows 10 Home and Windows 10 Pro computers, and I've never had this issue occur before.
    • I could NOT reproduce it on Windows 11 Home edition.
    • On Windows 11 Pro, it's easy to reproduce.
      • To reproduce it after applying the workaround, you have to fully uninstall WinMerge and then do a reinstall.
  • The context menu is not the same on Windows 11 Pro compared to Windows 11 Home. On 11 Home, the options are correctly consolidated under a sub menu, and on 11 Pro, the options are incorrectly on the root menu.
    • Windows 11 Home
      • ContextMenuWin11Home(smaller)
    • Windows 11 Pro
      • ContextMenuOnWin11Pro_(256_x_256)

David-Maisonave avatar Aug 06 '22 19:08 David-Maisonave

FYI: On Windows 11 (Home or Pro) you can remove the need to click on [Show More Options] by modifying the registry via following command line:

reg.exe delete "HKCU\Software\Classes\CLSID\{86ca1aa0-34aa-4e8b-a509-50c905bae2a2}" /f

After making the registry key change, restart File Explorer or your computer for the change to take effect.

That will allow WinMerge context menu to be available without having to click on [Show More Options] .

David-Maisonave avatar Aug 06 '22 21:08 David-Maisonave

I was not able to reproduce this issue with WinMerge-2.16.22-x64-Setup.exe, but I was able to reproduce it with WinMerge-2.16.22-x64-PerUser-Setup.exe. Was the installer you used WinMerge-2.16.22-x64-PerUser-Setup.exe?

sdottaka avatar Aug 07 '22 05:08 sdottaka

I was able to reproduce it by installing WinMerge-2.16.22-x64-Setup.exe immediately after uninstalling WinMerge.

sdottaka avatar Aug 07 '22 13:08 sdottaka

This issue has gotten worse. Now I can't get the context menu to show up at all. Is there any update to address this issue?

David-Maisonave avatar Aug 28 '22 01:08 David-Maisonave

Could you please try the following steps to see if this solves the problem?

  1. Uninstall WinMerge
  2. Restart Windows
  3. Install the latest version of WinMerge

sdottaka avatar Aug 28 '22 06:08 sdottaka

I have this issue too. But this issue only occurs when advanced menu is enabled and on desktop. Like this:

Advanced Menu Disable-->Works as expected AdvancedMenuDisable

Advanced Menu Enable (Desktop right click)-->Does not work as expected AdvecedMenuEnable(Desktop)

Advanced Menu Enable (File right click)-->Works as expected AdvancedMenuEnable(File)

I was not able to reproduce this issue with WinMerge-2.16.22-x64-Setup.exe, but I was able to reproduce it with WinMerge-2.16.22-x64-PerUser-Setup.exe. Was the installer you used WinMerge-2.16.22-x64-PerUser-Setup.exe?

No, it was WinMerge-2.16.26-x64-Setup.exe

Could you please try the following steps to see if this solves the problem?

  1. Uninstall WinMerge
  2. Restart Windows
  3. Install the latest version of WinMerge

I tried but this doesn't solve the problem

MuhammetEminCakir avatar Feb 08 '23 18:02 MuhammetEminCakir

Oh, I used to have no problem right-clicking on the desktop background, but now it doesn't seem to be working properly. However, I could not reproduce this problem by right-clicking on any file or folder on the desktop.

sdottaka avatar Feb 09 '23 00:02 sdottaka

I could not reproduce this problem by right-clicking on any file or folder on the desktop.

Are you testing this on Windows 11 Pro x64? I can still reproduced this issue. I just installed WinMerge-2.16.26-x64 using file WinMerge-2.16.26-x64-Setup.exe, and the issue is still there.

Environment

  1. Windows 11 Pro 64-bit
  2. WinMerge-2.16.26-x64-Setup.exe
  3. Disable Windows File Explorer Show More Options on Windows 11 Note: After this option is disabled, restart Windows Explorer using task manager or restart the computer so that the changes can take effect.

Steps to reproduce

  • Important: Select the file in windows explorer.
  • The file should be fully highlighted. FileFullySelected
  • Right click the file.
  • WinMerge does not appear on the context menu. MissingContextMenuItem_ReducedSize
  • Close the context menu.
  • Click on an empty area in the right side (like right below the last file).
  • The file should look like it's selected via an out line, instead of being fully highlighted. FileWithAnOutlineSelection
  • Right click on that same empty area.
  • WinMerge is now in the context menu. WinMergeInContextMenu
  • However selecting compare on the WinMerge context menu item, will start up WinMerge with the folder selected instead of the file.

Side-Note: The WinMerge About window shows this as being version 2.16.22.0 instead of 2.16.26.

David-Maisonave avatar Feb 09 '23 23:02 David-Maisonave

Hold the press!!! :-)

I finally figured out this issue, and I really should have figured it out when the version on the WinMerge About window did not match what I had just installed. There was an old x86 version 2.16.22.0 installed on my computer, and it stayed there even when I updated WinMerge with WinMerge-2.16.26-x64-Setup.exe. The context menu was setup with this old x86 version.

For anyone who has this same problem, here's the steps to fix it:

  1. Uninstall the old x86 version via Windows uninstall program.
  2. Start the x64 version which is under C:\Program Files\WinMerge.
  3. Select Edit->Options->[Shell Integration]
  4. Enable [Add to context menu]
  5. Enable [Enable advanced menu]
  6. Select Unregister shell extension
  7. Select Register shell extension
  8. Select Unregister shell extension for Windows 11 or later
  9. Select Register shell extension for Windows 11 or later

That resets it to the correct version with the correct context menu.

If this come up again, I would ask the user to look at their WinMerge About window and verify that they see the expected version and x64.

David-Maisonave avatar Feb 10 '23 01:02 David-Maisonave

Thank you for the information.

sdottaka avatar Feb 10 '23 12:02 sdottaka

I'm closing this issue since it's no longer reproducible with the old version fully uninstalled, and with WinMerge-2.16.26-x64 installed.

David-Maisonave avatar Feb 12 '23 07:02 David-Maisonave