在我的案例中有一个进程启动另一个进程并订阅已退出事件。 最后的第二个进程应该以某种方式将错误字符串传递给第一个进程。第一个过程将在屏幕上显示消息。
如何在应用程序结束时传递字符串,使另一个应用程序能够读取字符串并显示它?
答案 0 :(得分: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