在 C# 中从 Process.Start 隐藏控制台窗口
通过 System.Diagnostics.Process 类启动进程时,用户可能会遇到持久控制台尽管设置了 CreateNoWindow 和 WindowStyle 等属性,但仍会显示窗口。
在这种情况下,潜在的解决方案在于确保UseShellExecute 设置为 false。正如 MSDN 上所述:
如果 UseShellExecute 属性为 true 或 UserName 和 Password 属性不为空,则忽略 CreateNoWindow 属性值并创建一个新窗口。
因此,以下内容代码应该有效隐藏控制台窗口:
ProcessStartInfo startInfo = new ProcessStartInfo(); startInfo.FileName = fullPath; startInfo.Arguments = args; startInfo.RedirectStandardOutput = true; startInfo.RedirectStandardError = true; startInfo.UseShellExecute = false; startInfo.CreateNoWindow = true; Process processTemp = new Process(); processTemp.StartInfo = startInfo; processTemp.EnableRaisingEvents = true; try { processTemp.Start(); } catch (Exception e) { throw; }
以上是如何在 C# 中启动进程时有效隐藏控制台窗口?的详细内容。更多信息请关注PHP中文网其他相关文章!