Deprecate setup.exe installer in favor of the Windows Installer (*.msi).
end2endzone opened this issue · comments
Is your feature request related to a problem? Please describe.
Version 0.6.1 has two installer. The first one is a setup.exe and a second is build with Windows Installer in msi format. This creates confusion with users that want to simply "click and install". Also, both installers need to be maintained, have issues and does not install everything properly.
Describe the solution you'd like
- Deprecate setup.exe. Long live the Windows Installer.
- Merge features of the setup.exe into the Windows Installer:
- Add a ShellAnything homepage shortcut in Start menu
- Add a Third party licenses shortcut in Start menu. The shortcut should open the local installation directory.
- Fix remaining issues about Windows Installer:
-
Generate a new Product GUID for each new package generation. -
Uninstall previous version before proceeding with a new installation. Nothing to do. This is the default when not using a PRODUCT_GUID and keeping the same UPGRADE_GUID across all package builds. - Install in
C:\Program Files\ShellAnything
. - Remove all shortcuts when uninstalling.
- Remove previous version. - note: the installer does not remove previous version but refuse to install if a previous version is installed on the system.
- Shell extension registration with installation
- Shell extension unregistration when uninstalling
- Add ShellAnything in shortcut names to be searchable on Windows 10.
-
Describe alternatives you've considered
N/A
Additional context
N/A
The following references can help with the auto-registration and unregistration of the shell extension when installing/uninstalling.
- https://stackoverflow.com/questions/26012077/running-regsvr32-as-part-of-a-wix-installer
- https://stackoverflow.com/questions/34199756/installing-and-registering-shell-extension-context-menu-from-wix-installer
- https://social.msdn.microsoft.com/Forums/en-US/4c0ec0dd-1a9f-45b7-ba1b-f6a9825b0093/context-menu-registering-and-shchangenotify?forum=windowsuidevelopment
- https://wix-users.narkive.com/DopurMM7/looking-for-simple-com-component-install-info
There are some things to check before considering to modify the installer to use self registration.
The following references should be investigated:
- https://stackoverflow.com/questions/6129816/msi-register-dll-self-registration-considered-harmful/6141538#6141538
- https://stackoverflow.com/questions/10510697/registering-com-dll-in-wix
- https://stackoverflow.com/questions/47746076/registering-a-cpp-dll-into-com-after-installation-using-wix-msi-installer
- https://stackoverflow.com/questions/364187/how-do-you-register-a-win32-com-dll-file-in-wix-3
ed233f2 Updated installer to support automatic shell extension registration after installation and automatic unregistration when before uninstalling.
The self registration is triggered by an optional feature called Register components
.
People that do not like the self registration nature of the installer can disable the feature and use manual registration/unregistration.