Skip to content

Fix MSI installer: per-machine install, x64 path, completion dialog - #19

Merged
TheZeekA merged 2 commits into
mainfrom
testing
Aug 2, 2026
Merged

TheZeekA merged 2 commits into
mainfrom
testing

Conversation

@TheZeekA

@TheZeekA TheZeekA commented Aug 2, 2026

Copy link
Copy Markdown
Owner

Fixes the MSI installer, confirmed working end-to-end on a real machine:

  • Switched from per-user (no-admin) to standard per-machine install - the per-user version silently completed without installing anything, and install-time behavior can't be verified in CI (nothing actually runs the installer, only builds it).
  • Fixed a real bug found via install.log: the app was landing in C:\Program Files (x86)\ZeeCrypt instead of C:\Program Files\ZeeCrypt because the wix build command never declared a target architecture. Added -arch x64.
  • Added Desktop shortcut alongside the existing Start Menu one.
  • Added WixUI_Minimal (license agreement -> progress -> "Setup was successful" dialog) so the installer shows a completion screen instead of finishing silently.
  • File association and context menu registry entries moved from HKCU to HKCR (correct root for per-machine installs, applies to all users).

Already verified against the live v1.51 release assets (which this build also republished with the fixes) - confirmed working by direct install test.

The per-user (no-admin) install silently completed without actually
installing anything - confirmed on a real machine, since nothing in
this pipeline actually runs the installer (CI only builds it). Rather
than keep debugging a less common, harder-to-test install path blind,
switched to the standard per-machine pattern: installs to
ProgramFiles64Folder, requires a UAC admin prompt during install.

File association and context menu registry entries move from HKCU to
HKCR, which Windows Installer resolves to
HKEY_LOCAL_MACHINE\Software\Classes for a per-machine install - the
correct root so these apply to every user on the machine, not just
whoever happened to run the elevated installer.

Also adds a Desktop shortcut alongside the existing Start Menu one.

README updated to reflect that the installer (not the app itself) now
requires administrator privileges.
Wires up WiX's standard WixUI_Minimal dialog set (license agreement,
progress, and a "Setup was successful" completion screen) so the
installer actually shows something at the end instead of finishing
silently. There's no simpler built-in WiX dialog set that skips
straight to a success screen - every stock sequence includes the
license dialog first, which is normal practice for GPL software
anyway, so this uses it as-is. License.rtf is a mechanically generated
RTF conversion of LICENSE (plain-text GPL-3.0, escaped for RTF's
special characters, verified brace-balanced).

Also fixes a real bug found via install.log from actual testing: the
app was landing in "C:\Program Files (x86)\ZeeCrypt" instead of
"C:\Program Files\ZeeCrypt", because the wix build command never
declared a target architecture, so WiX defaulted to a 32-bit package
and Windows Installer's dual-folder redirection silently swapped
ProgramFiles64Folder to the x86 path. Added -arch x64.

.gitignore now covers *.msi/*.wixpdb/install.log, the local artifacts
produced while testing this.
@TheZeekA
TheZeekA merged commit e53ea23 into main Aug 2, 2026
1 check passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant