Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[No workaround] Shell Integration doesn't work for other users, and Unregister shell extension does nothing (cannot Register) #2419

Open
scscgit opened this issue Sep 1, 2024 · 5 comments

Comments

@scscgit
Copy link
Contributor

scscgit commented Sep 1, 2024

When I switch to a different user on Windows 10, there is no shell integration to run WinMerge by right-clicking a file. It originally worked on my first user.

Thinking the installation only installed it for the first user, I uninstalled old version, and then installed the latest WinMerge-2.16.42.1-x64-Setup.exe variant for all users.

When I tried it on the second user, there was still no shell integration. So I went to settings and tried both buttons (Unregister shell extension and Register shell extension for current user only). They do absolutely nothing. And I realized that it doesn't work on my first user anymore either.
image

@sdottaka
Copy link
Member

sdottaka commented Sep 1, 2024

I was unable to reproduce this issue.
Does the second user have the "Add to context menu" checkbox checked?

@scscgit
Copy link
Contributor Author

scscgit commented Sep 2, 2024

Yes, the options look the same on both users.

Are there any logs for the shell integration, or any debugging steps I could try?

@sdottaka
Copy link
Member

sdottaka commented Sep 2, 2024

Unfortunately there is no option to output logs.

Another thing to check is whether the second user has administrator privileges.

(This shouldn't be necessary if it's a per-user shell extension)

@Flyingscool
Copy link

I didn't realize how similar our bug reports are. I fixed the problem by copying the ShellExtensionX64.dll to ShellExtensionU.dll.

As I noted in my bug report, two windows pop up when clicking the "Register Shell Extension" buttons (I'm on Windows 11 Home on the machine I was having the context menu problem with). In the first window, when I displayed the details, it mentioned the ShellExtensionX64.dll, and in the second window it mentioned the ShellExtensionU.dll file. ShellExtensionU.dll did not exist in the directory, so I copied ShellExtensionX64.dll to ShellExtensionU.dll unregistered the options, then clicked the two Register buttons, and it added the context menu option.

@scscgit
Copy link
Contributor Author

scscgit commented Sep 5, 2024

Yes, both users are admins. I also tried to run WinMerge as admin, and I still cannot register the shell extensions in either of them, because there is only the Unregister button. And I already have the ShellExtensionU.dll file there. Even if I copy it to ShellExtensionX64.dll, the Unregister button still doesn't cause the Register button to become available.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

3 participants