0

在我的情况下,有一个进程启动另一个进程并订阅 Exited 事件。最后的第二个进程应该以某种方式将错误字符串传递给第一个进程。第一个过程将在屏幕上显示消息。

如何在应用程序末尾传递一个字符串,以使另一个应用程序能够读取该字符串并显示它?

4

1 回答 1

2

您可以重定向 StandardError 流:http: //msdn.microsoft.com/en-us/library/system.diagnostics.process.standarderror.aspx

Process myProcess = new Process();
ProcessStartInfo myProcessStartInfo = new ProcessStartInfo("net ","use "+ args[0]);

myProcessStartInfo.UseShellExecute = false;
myProcessStartInfo.RedirectStandardError = true;
myProcess.StartInfo = myProcessStartInfo;
myProcess.Start();

StreamReader myStreamReader = myProcess.StandardError;
// Read the standard error of net.exe and write it on to console.
Console.WriteLine( myStreamReader.ReadLine());
myProcess.Close();

研究以下内容,然后选择最适合您的场景的需求。我的猜测是,如果您将数据传递回父进程,则需要输出或错误。

StartInfo.RedirectStandardOutput
StartInfo.RedirectStandardError
StartInfo.RedirectStandardInput
于 2013-05-28T12:04:08.647 回答