diff options
author | Michael Schuster <michael@schuster.ms> | 2020-08-18 20:11:08 +0300 |
---|---|---|
committer | Michael Schuster <michael@schuster.ms> | 2020-08-20 19:50:05 +0300 |
commit | 0ba5df597fe707811418a934c73a0c6ded88a90a (patch) | |
tree | e35c9bd926c496c1d3c47ea0b761057b93aea4b2 /shell_integration/windows/WinShellExtConstants.h.in | |
parent | 8ce13b7bdb0d14e8335ab33ff7a223ed02157114 (diff) |
Windows shell extensions: Rename all files and classes from OC* to NC*, update version info
This also ensures a clear separation in the system registry.
SelfReg is not recommended by Microsoft and will be handled by the MSI package to allow proper Repair and Uninstall.
However, we keep it for backward compatibility with the NSIS installer.
For details see:
https://stackoverflow.com/questions/364187/how-do-you-register-a-win32-com-dll-file-in-wix-3#364210
https://docs.microsoft.com/en-us/windows/win32/msi/selfreg-table#remarks
Another fix by this commit:
The "Version" registry value in the NCOverlays self reg should be a key and not a value.
Details: https://wixtoolset.org/documentation/manual/v3/xsd/wix/class.html
Example:
[HKCR\CLSID\{01234567-89AB-CDEF-0123-456789ABCDEF}\Version]
@="1.0.0.0"
Signed-off-by: Michael Schuster <michael@schuster.ms>
Diffstat (limited to 'shell_integration/windows/WinShellExtConstants.h.in')
-rw-r--r-- | shell_integration/windows/WinShellExtConstants.h.in | 19 |
1 files changed, 19 insertions, 0 deletions
diff --git a/shell_integration/windows/WinShellExtConstants.h.in b/shell_integration/windows/WinShellExtConstants.h.in index 4c8a16597..cc0b4e32f 100644 --- a/shell_integration/windows/WinShellExtConstants.h.in +++ b/shell_integration/windows/WinShellExtConstants.h.in @@ -14,8 +14,13 @@ #pragma once +// IMPORTANT: Keep this file in sync with WinShellExtConstants.wxi.in + // Context Menu #define CONTEXT_MENU_GUID L"@WIN_SHELLEXT_CONTEXT_MENU_GUID@" +#define CONTEXT_MENU_REGKEY_NAME L"@APPLICATION_SHORTNAME@ContextMenuHandler" + +#define CONTEXT_MENU_DESCRIPTION L"@APPLICATION_SHORTNAME@ context menu handler" // Overlays #define OVERLAY_GUID_ERROR L"@WIN_SHELLEXT_OVERLAY_GUID_ERROR@" @@ -23,3 +28,17 @@ #define OVERLAY_GUID_OK_SHARED L"@WIN_SHELLEXT_OVERLAY_GUID_OK_SHARED@" #define OVERLAY_GUID_SYNC L"@WIN_SHELLEXT_OVERLAY_GUID_SYNC@" #define OVERLAY_GUID_WARNING L"@WIN_SHELLEXT_OVERLAY_GUID_WARNING@" + +// +// Preceeding spaces are intended, two spaces to put us ahead of the competition :/ +// +// There is a limit in Windows (oh wonder^^) so that only the first 15 extensions get invoked, this is why to use that dirty little trick to get ahead ;) +// See: https://docs.microsoft.com/en-us/windows/win32/shell/context-menu-handlers?redirectedfrom=MSDN#employing-the-verb-selection-model +// +#define OVERLAY_NAME_ERROR L" @APPLICATION_SHORTNAME@Error" +#define OVERLAY_NAME_OK L" @APPLICATION_SHORTNAME@OK" +#define OVERLAY_NAME_OK_SHARED L" @APPLICATION_SHORTNAME@OKShared" +#define OVERLAY_NAME_SYNC L" @APPLICATION_SHORTNAME@Sync" +#define OVERLAY_NAME_WARNING L" @APPLICATION_SHORTNAME@Warning" + +#define OVERLAY_DESCRIPTION L"@APPLICATION_SHORTNAME@ overlay handler" |