如何在此方案中显示我的控制台应用程序的控制台?

时间:2013-12-14 23:32:05

标签: c# console-application

通过在资源管理器中双击控制台应用程序来启动控制台应用程序时,控制台可见。但是,如果您通过已经不可见的应用程序运行控制台应用程序,则控制台是不可见的(可能是因为它正在尝试读取标准输出或其他内容)。

那么,即使控制台应用程序是由后台应用程序启动的,如何向用户显示我的控制台窗口呢?

我已经尝试过ShowWindowSetForeground Windows API而没有任何运气。我也尝试了以下内容。

//paths for starting the server.
var processInformation = new ProcessStartInfo(myOwnPath);
processInformation.WorkingDirectory = myOwnWorkingDirectory;
processInformation.UseShellExecute = false;
processInformation.WindowStyle = ProcessWindowStyle.Normal;
processInformation.CreateNoWindow = false;

processInformation.RedirectStandardInput = false;
processInformation.RedirectStandardError = false;
processInformation.RedirectStandardOutput = false;

Process.Start(processInformation);

有什么想法吗?

注意:如果应用程序需要启动自身并关闭旧实例以使控制台窗口可见,那就完全没了问题。

1 个答案:

答案 0 :(得分:0)

尝试将UseShellExecute设为true。将其设置为false可让您重定向输入,输出和错误流。