Hacktoberfest 2026: những issue maintainer đã đánh dấu cho tháng Mười, đang mở và phù hợp người mới. Xem issue Hacktoberfest

Uninstall does not terminate running desktop app process, blocking reinstall

Đang mở Phù hợp với người mới
#166 0 bình luận 0 reaction 0 người được giao Xem trên GitHub

Chưa có ai nhận issue này.

Đánh giá

Độ khó
2/5
Thời gian dự kiến
1-3 giờ
Mức phù hợp với người mới
65/100
Loại issue
Lỗi
Độ rõ ràng
Đặc tả rõ ràng
Mức độ hoạt động
Đình trệ
Công nghệ
csharp
Lĩnh vực
build-system, desktop

Hướng nghiên cứu

Bắt đầu trong Installer/Program.cs và xem xét vòng đời ServiceInstaller hiện có của dự án MSI cũng như việc sử dụng WixExtension.Util. Xây dựng hoặc chạy quy trình gỡ cài đặt và cài đặt lại khi Coder Desktop đang chạy, sau đó xác minh rằng cả các tiến trình desktop và VPN đều được dừng trong quá trình gỡ cài đặt, đồng thời ứng dụng khởi chạy bình thường sau khi cài đặt lại.

Do mô hình lập chỉ mục viết ra từ nội dung của issue.

Mô tả

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

Ngôn ngữ chính
C#
Star
29
Fork
12
Merge trung bình
4 giờ 15 phút
Pull request đã merge (30 ngày)
2

Hướng dẫn đóng góp

Chưa lập chỉ mục được hướng dẫn đóng góp cho kho mã nguồn này

Bắt đầu từ đâu

  1. Đọc hết issue, rồi đọc hướng dẫn đóng góp của dự án.
  2. Bình luận trên issue rằng bạn sẽ nhận — tránh hai người làm cùng một việc.
  3. Fork repository và làm thay đổi trên một nhánh.
  4. Mở pull request có tham chiếu số hiệu của issue.

Issue khác của coder/coder-desktop-windows

Tất cả issue của coder/coder-desktop-windows

Issue tương tự

Thêm issue về C#

Nhận issue mới trong hộp thư của bạn

Bản tóm tắt ngắn những issue GitHub phù hợp với người mới.