将管道参数发送到C#应用程序

时间:2013-03-20 13:58:07

标签: c# windows pipe windows-server-2012

我需要构建一个接受管道作为输入的简单控制台应用程序。我们正在运行Windows Server 2012.数据来自另一个应用程序,它将“管道”输入到此应用程序。我从Linux的角度理解管道,但从Windows的角度来看,它并不能理解它们。

我最好的猜测是我需要像这样向我的应用程序发送输入: C:\ app.exe<的test.txt

使用'<'时我目前的理解是它将test.txt转换为流并传入指针。

我的问题是,有人能举例说明如何在我的应用程序中的窗口中接收流指针或等效的东西,以便我可以读取输入吗?

1 个答案:

答案 0 :(得分:2)

当您对应用程序使用<>时,标准输入和输出流(屏幕/键盘接口)将被文件流替换。

您可以使用常规Console.ReadConsole.ReadLine命令从<指令指定的流中读取,或使用Console.In TextReader

同样,Console.WriteConsole.WriteLine可用于写入>指令指定的输出流,或Console.Out TextWriter。< / p>

如果使用|管道指令,例如myapp.exe | sort,则第一个程序的输出流将进入下一个程序的输入流。