diff --git a/src/winapp-CLI/WinApp.Cli/Services/UiSessionService.cs b/src/winapp-CLI/WinApp.Cli/Services/UiSessionService.cs index 6facc932..3759b266 100644 --- a/src/winapp-CLI/WinApp.Cli/Services/UiSessionService.cs +++ b/src/winapp-CLI/WinApp.Cli/Services/UiSessionService.cs @@ -355,6 +355,19 @@ private static void RefreshWindowTitle(UiSessionInfo session) LogPartialMatch(app, result); return result; } + + if (withWindow.Length > 1) + { + var listing = string.Join("\n ", + withWindow.Select(p => + { + try { return $"PID {p.Id} ({p.ProcessName}): \"{p.MainWindowTitle}\""; } + catch { return $"PID {p.Id}"; } + })); + throw new InvalidOperationException( + $"Multiple processes matching '{app}' found:\n {listing}\n" + + "Use --app with a PID or a more specific window title."); + } } } finally