+
Skip to content

Conversation

KernelGhost
Copy link
Member

@KernelGhost KernelGhost commented Oct 7, 2025

This PR introduces the initial scaffolding for winapps-monitor, a lightweight session management application designed to run on Windows.

As discussed privately with @oskardotglobal, the broader goal of winapps-monitor is to establish a more reliable and maintainable foundation for WinApps by taking explicit control of session control and application lifecycle management within Windows. At present, handling of the RDP session lifecycle relies on inconsistent and opaque heuristics within Windows, often leading to FreeRDP sessions that persist indefinitely. In addition, launching new applications currently requires initiating a new RDP session, causing all windows to briefly disappear as they reattach to the new process. By introducing a dedicated background process that handles application launch requests and tracks all open applications, we can explicitly terminate inactive sessions and launch additional applications over a single persistent RDP connection. This approach also shifts core project logic to the Windows side, potentially simplifying the Linux code base and eliminating the need for daemons. winapps-monitor may also serve as a foundation for future functionality that might necessitate a native Windows agent.

Functionality at present is minimal. The application creates a system tray icon and indefinitely enumerates open windows via Win32 API hooks.

Future plans include:

  • Communication with the host OS to handle application launches (enabling a single persistent RDP connection) (e.g. launch <path> <args>)
  • System tray icon enumeration to detect background applications without visible windows

As I am still very new to Rust, this code has been authored with significant LLM assistance, so feedback on code style, safety and architecture would be greatly appreciated.

This PR depends on #308

KernelGhost and others added 3 commits October 7, 2025 22:21
Signed-off-by: Rohan Barar <rohan.barar@gmail.com>
Signed-off-by: Rohan Barar <rohan.barar@gmail.com>
@oskardotglobal
Copy link
Member

CI will keep failing until #308 is merged, so we should do that first

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.

2 participants
点击 这是indexloc提供的php浏览器服务,不要输入任何密码和下载