我想运行一个输出文件的控制台应用程序.
我使用以下代码:
Process barProcess = Process.Start("bar.exe", @"C:\foo.txt");
运行时,将出现控制台窗口.我想隐藏控制台窗口,以便用户看不到它.
这可能吗?使用Process.Start是启动另一个控制台应用程序的最佳方法吗?
Process p = new Process(); StreamReader sr; StreamReader se; StreamWriter sw; ProcessStartInfo psi = new ProcessStartInfo(@"bar.exe"); psi.UseShellExecute = false; psi.RedirectStandardOutput = true; psi.RedirectStandardError = true; psi.RedirectStandardInput = true; psi.CreateNoWindow = true; p.StartInfo = psi; p.Start();
这将启动子进程而不显示控制台窗口,并允许捕获StandardOutput等.
检查ProcessStartInfo并设置WindowStyle = ProcessWindowStyle.Hidden和CreateNoWindow = true.