end2endzone / ShellAnything

ShellAnything is a C++ open-source software which allow one to easily customize and add new options to *Windows Explorer* context menu. Define specific actions when a user right-click on a file or a directory.

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Register the shell extension for AllFilesystemObjects.

end2endzone opened this issue · comments

Is your feature request related to a problem? Please describe.
The code in DllRegisterServer() and DllUnregisterServer() registers the shell extension for *, Directory, Folder, Directory\Background and Drive.

Describe the solution you'd like
According to owncloud/client, it could be easier to only register the shell extension for AllFilesystemObjects.
More investigation is required to see if this would resolves in simpler code and same functionality.

Describe alternatives you've considered
N/A

Additional context
N/A

According to https://learn.microsoft.com/en-us/windows/win32/shell/reg-shell-exts#predefined-shell-objects, AllFilesystemObjects is the same as the individual *, Directory, Directory/Background, Folder and Drive types.

Registering a single type would have been easier in the code as demonstrated by owncloud/client. However, since the code has moved to using Registrar scripts (*.rgs files), specifying each type of object individually is not more difficult that a single object type.

The current implementation is also working properly when right-clicking on the desktop. Registering for the DesktopBackground type does not seem required.

Closing the issue as 'wont do'.