从C#启动perl进程并读取标准输出

时间:2013-07-24 09:57:06

标签: c# perl process io

我有一些C#代码启动了一个perl脚本。然后perl脚本有自己的子进程。

我遇到的问题是当我尝试读取标准输出时,C#等待所有perl子进程完成然后返回所有输出。

是否可以动态地动态读取所有Perl子进程的标准输出?

->C# process 
   ->Perl process
     -> Perl child process
     -> Perl child process
     -> Perl child process

在cmd中运行perl脚本时,所有输出都是正确的。

1 个答案:

答案 0 :(得分:0)

为什么不通过C#运行主perl进程,然后通过在名称上搜索进程来获取System.Diagnostic.Process数组,因为它们都将作为“perl”运行

Process [] localByName = Process.GetProcessesByName("perl");

然后遍历数组并用作标准的System.Diagnostic.Process来获取输出。