C#中如何捕获另一个进程返回的对象
How to catch the returned object from another process in C#
我有一个 c# 程序,它将使用 Process.start() 调用另一个 c# 程序,我也有源代码。
我如何 return 一个字符串,例如来自第二个程序的字符串,它可以被调用程序读取。
谢谢
最简单的方法可能是将其写入 "child" 进程的标准输出(即控制台)。 "parent" 进程然后可以读取该进程的标准输出(和错误)。参见 Process.StandardOutput
。
或者,您可以使用套接字、命名管道或类似的东西。这当然要难得多,但如果你想通过这个过程制作多个 requests/responses 是合适的。
返回整数很简单。只需 return 来自 main() 函数的整数值,它将被解释为调用进程可以读取的退出代码。
其他类型涉及跨进程通信,绝不是在公园散步。
虽然其他答案很好 - 您可以使用小文件作为传达更大字符串的方式。
我有一个 c# 程序,它将使用 Process.start() 调用另一个 c# 程序,我也有源代码。
我如何 return 一个字符串,例如来自第二个程序的字符串,它可以被调用程序读取。
谢谢
最简单的方法可能是将其写入 "child" 进程的标准输出(即控制台)。 "parent" 进程然后可以读取该进程的标准输出(和错误)。参见 Process.StandardOutput
。
或者,您可以使用套接字、命名管道或类似的东西。这当然要难得多,但如果你想通过这个过程制作多个 requests/responses 是合适的。
返回整数很简单。只需 return 来自 main() 函数的整数值,它将被解释为调用进程可以读取的退出代码。
其他类型涉及跨进程通信,绝不是在公园散步。
虽然其他答案很好 - 您可以使用小文件作为传达更大字符串的方式。