即使在ProcessWindowStyle.Hidden之后,控制台窗口仍然会弹出;

我必须从我的Windows应用程序运行控制台应用程序。 我想运行的控制台应用程序是我的应用程序中的嵌入式资源,我这样称呼它:

// Run the updater and grab its output Process Updater = new Process(); Updater.StartInfo.FileName = "C:\\tmp\\tmp.exe"; Updater.StartInfo.WindowStyle = ProcessWindowStyle.Hidden; Updater.StartInfo.UseShellExecute = false; Updater.StartInfo.RedirectStandardOutput = true; Updater.Start(); string UpdaterOutput = Updater.StandardOutput.ReadToEnd(); Updater.WaitForExit(); 

它提取精细,它运行良好,它也完全抓住它的输出…但我仍然可以看到控制台窗口在运行时快速弹出。 我知道控制台弹出来自此应用程序,因为控制台标题是C:\tmp\tmp.exe 。 是否有任何完全失败的方法来隐藏控制台应用程序? 我以为使用ProcessWindowStyle.Hidden会这样做,但显然不是。

谢谢。

将ProcessStartInfo.CreateNoWindow属性设置为true