From 721bb987fd9e57ed217bf2f06ae03c8cba645a4f Mon Sep 17 00:00:00 2001 From: Jack251970 <1160210343@qq.com> Date: Sun, 15 Jun 2025 16:36:13 +0800 Subject: [PATCH] Handle create no window parameter in command exe --- Flow.Launcher.Command/Program.cs | 17 +++++++++++++---- 1 file changed, 13 insertions(+), 4 deletions(-) diff --git a/Flow.Launcher.Command/Program.cs b/Flow.Launcher.Command/Program.cs index 53529007d..e8a28cf5b 100644 --- a/Flow.Launcher.Command/Program.cs +++ b/Flow.Launcher.Command/Program.cs @@ -10,7 +10,7 @@ internal static class Program if (args.Length == 0) return -1; // Start process with arguments - // Usage: Flow.Launcher.Command -StartProcess -FileName -WorkingDirectory -Arguments -UseShellExecute -Verb + // Usage: Flow.Launcher.Command -StartProcess -FileName -WorkingDirectory -Arguments -UseShellExecute -Verb -CreateNoWindow if (args[0] == @"-StartProcess") { var fileName = string.Empty; @@ -18,6 +18,7 @@ internal static class Program var argumentList = new List(); var useShellExecute = true; var verb = string.Empty; + var createNoWindow = false; var isArguments = false; for (int i = 1; i < args.Length; i++) @@ -54,6 +55,11 @@ internal static class Program isArguments = false; break; + case "-CreateNoWindow": + if (i + 1 < args.Length && bool.TryParse(args[++i], out bool createNoWin)) + createNoWindow = createNoWin; + break; + default: if (isArguments) argumentList.Add(args[i]); @@ -79,7 +85,8 @@ internal static class Program FileName = fileName, WorkingDirectory = workingDirectory, UseShellExecute = useShellExecute, - Verb = verb + Verb = verb, + CreateNoWindow = createNoWindow }; } else if (argumentList.Count == 1) @@ -90,7 +97,8 @@ internal static class Program WorkingDirectory = workingDirectory, Arguments = argumentList[0], UseShellExecute = useShellExecute, - Verb = verb + Verb = verb, + CreateNoWindow = createNoWindow }; } else @@ -100,7 +108,8 @@ internal static class Program FileName = fileName, WorkingDirectory = workingDirectory, UseShellExecute = useShellExecute, - Verb = verb + Verb = verb, + CreateNoWindow = createNoWindow }; foreach (var arg in argumentList) {