Hacktoberfest 2026: the issues maintainers tagged for October, open and beginner-friendly. Browse Hacktoberfest issues

Uninstall does not terminate running desktop app process, blocking reinstall

Open Beginner friendly
#166 0 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Assessment

Difficulty
2/5
Estimated time
1-3 hours
Newbie friendliness
65/100
Issue type
Bug
Clarity
Clearly specified
Activity status
Stale
Tech stack
csharp

Research direction

Start in Installer/Program.cs and review the MSI project’s existing ServiceInstaller lifecycle and WixExtension.Util usage. Build or run the uninstall and reinstall flow with Coder Desktop running, then verify that both desktop and VPN processes are stopped during uninstall and that the app launches normally after reinstall.

Written by the indexing model from the issue text.

Description

bug

Summary

Uninstalling Coder Desktop via the Control Panel "Uninstall a program" wizard completes successfully, but the Coder Desktop.exe process (and the VPN service background process) remain running in Task Manager. This causes reinstallation to silently fail — the app never launches again.

Root Cause

The MSI installer has no mechanism to close the running desktop app process during uninstall. The ServiceInstaller manages the Windows service lifecycle (StopOn = InstallUninstall_Wait, RemoveOn = Uninstall_Wait), but there is no corresponding WixCloseApplication or custom action to terminate the user-space desktop app.

After uninstall, the old Coder Desktop.exe process continues running and holds the AppInstance singleton key (Coder.Desktop.App via AppInstance.FindOrRegisterForKey). On reinstall and relaunch:

  1. The new instance calls AppInstance.FindOrRegisterForKey("Coder.Desktop.App")
  2. It finds the old (zombie) instance, so mainInstance.IsCurrent is false
  3. It calls RedirectActivationToAsync to the old instance
  4. The old instance's OnActivated receives a Launch activation kind, which hits the unhandled default case
  5. The warning activation for "Launch", which is unhandled is logged and nothing else happens
  6. The new instance exits, and the app appears to never start

Steps to Reproduce

  1. Install Coder Desktop and launch it (the app runs in the system tray)
  2. Uninstall via Control Panel → "Uninstall a program"
  3. Observe in Task Manager that Coder Desktop and Coder VPN Service background processes are still running
  4. Reinstall Coder Desktop and launch it
  5. The app never appears — no tray icon, no window
  6. Check the logs for: [WRN] activation for "Launch", which is unhandled

Expected Behavior

  • The uninstaller should terminate the running Coder Desktop.exe process before removing files
  • The VPN service should be fully stopped and removed
  • After reinstall, the app should launch normally

Suggested Fix

Add a WixCloseApplication element (from WixExtension.Util) to the MSI project targeting Coder Desktop.exe. This will gracefully close the running app process during uninstall/upgrade before files are removed. For example in Installer/Program.cs:

project.Include(WixExtension.Util);
project.WixSourceGenerated += doc =>
    doc.FindFirst("Package").AddElement(
        WixExtension.Util.ToXName("CloseApplication"),
        "Target=Coder Desktop.exe; CloseMessage=yes; RebootPrompt=no");

Created on behalf of @uzair-coder07

Dominant language
C#
Stars
29
Forks
12
Avg merge
4h 15m
Merged PRs (30d)
2

Contributor guide

No contributing guide indexed for this repository

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

More from coder/coder-desktop-windows

All issues in coder/coder-desktop-windows

Similar issues

More C# issues

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.