从控制台应用程序返回一个字符串

Nev*_*vyn 16 c# console

我真正想做的就是这个

static string Main(string[] args)
Run Code Online (Sandbox Code Playgroud)

但这不起作用,你唯一的选择是voidint.那么,有什么不同的方法可以返回我需要返回调用应用程序的字符串?

背景

我需要编写一个专门设计用于从另一个应用程序调用的控制台应用程序

Process.Start("MyCode.exe -Option 12aaa1234");
Run Code Online (Sandbox Code Playgroud)

该调用程序如何接收从该可执行文件返回的字符串?

研究

据我所知,此时我唯一的选择是让调用应用程序在启动之前将监听流附加到流程的标准输出流,并使用Console.Out.Write从里面发送"return"可执行文件.这实际上是这样做的唯一方法,还是我可以使用不同/更好的东西?

Ree*_*sey 14

这实际上是这样做的唯一方法,还是我可以使用不同/更好的东西?

这不是唯一的方法,但它是最常见的.

其他选项将涉及某种形式的进程间通信,这可能会对单个字符串进行更多的开发工作.

请注意,如果调用应用程序是.NET应用程序,并且您可以控制这两个应用程序,那么编写类库而不是控制台应用程序可能更有意义.这将允许您将代码完全分开,但让可执行文件"调入"您的库以获取字符串数据.