我有一个用c#编写的控制台应用程序,它启动了一个新进程。这个新进程也是一个控制台应用程序。问题是整个子进程输出转到父控制台窗口,我不希望它。如果它创建一个新的控制台窗口并不重要,我不需要它。
编辑:
Process p = new Process();
p.StartInfo.FileName = @"C:\example.exe";
p.Start();
我尝试了一些额外的设置,比如CreateNoWindow,RedirectOutput等,但没有运气
答案 0 :(得分:0)
通常,当您创建子进程时,会弹出一个新的控制台窗口,子进程的所有输出都将在该窗口中结束。以下是展示此行为的示例程序:
using System;
using System.Diagnostics;
using System.IO;
using System.Reflection;
static class Program
{
static void Main(string[] args)
{
Console.WriteLine("TEST");
if (args.Length == 0)
{
string path = Assembly.GetExecutingAssembly().Location;
Process.Start(path, "DontStartProcess");
}
Console.ReadLine();
}
}