如何将字符串从一个进程传递到另一个进程?

时间:2013-05-28 11:56:02

标签: c# process

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

如何在应用程序结束时传递字符串,使另一个应用程序能够读取字符串并显示它?

1 个答案:

答案 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