Bug: ArgyllCMS child processes open visible terminal window on Windows #46

Closed
opened 2026-08-24 18:54:13 +01:00 by gronod · 0 comments
Owner

Description

On Windows, whenever an ArgyllCMS tool is executed (such as targen, printtarg, chartread, colprof, profcheck, instlist, etc.), a black command prompt / terminal window opens up and covers the main UI window for several seconds while the tool runs.

Root Cause

ArgyllCMS executables are compiled as Windows console subsystem binaries (IMAGE_SUBSYSTEM_WINDOWS_CUI). When spawned by tokio::process::Command without process creation flags, the Windows OS allocates and displays a new console window by default.

Solution

  1. In src-tauri/src/process_manager.rs, import std::os::windows::process::CommandExt on #[cfg(windows)].
  2. Apply command.creation_flags(0x08000000); (CREATE_NO_WINDOW) when spawning child processes on Windows. This hides the console window entirely while preserving standard input/output streaming.
  3. Bump patch version 0.1.5 -> 0.1.6.
### Description On Windows, whenever an ArgyllCMS tool is executed (such as `targen`, `printtarg`, `chartread`, `colprof`, `profcheck`, `instlist`, etc.), a black command prompt / terminal window opens up and covers the main UI window for several seconds while the tool runs. ### Root Cause ArgyllCMS executables are compiled as Windows console subsystem binaries (`IMAGE_SUBSYSTEM_WINDOWS_CUI`). When spawned by `tokio::process::Command` without process creation flags, the Windows OS allocates and displays a new console window by default. ### Solution 1. In `src-tauri/src/process_manager.rs`, import `std::os::windows::process::CommandExt` on `#[cfg(windows)]`. 2. Apply `command.creation_flags(0x08000000);` (`CREATE_NO_WINDOW`) when spawning child processes on Windows. This hides the console window entirely while preserving standard input/output streaming. 3. Bump patch version `0.1.5` -> `0.1.6`.
Sign in to join this conversation.