C# 如何向正在运行的程序发送命令并从中获取结果?
我有一个与命令行应用程序相同的应用程序。我输入命令,它将命令发送到服务器并在屏幕上显示结果。 我的应用程序是windows上的一个可执行应用程序,有两个功能可以帮助我轻松工作:录制脚本和播放脚本。 现在,我想向正在运行的应用程序发送命令,并启动“播放脚本”按钮在其上运行发送的命令。C# 如何向正在运行的程序发送命令并从中获取结果?,c#,windows-applications,C#,Windows Applications,我有一个与命令行应用程序相同的应用程序。我输入命令,它将命令发送到服务器并在屏幕上显示结果。 我的应用程序是windows上的一个可执行应用程序,有两个功能可以帮助我轻松工作:录制脚本和播放脚本。 现在,我想向正在运行的应用程序发送命令,并启动“播放脚本”按钮在其上运行发送的命令。 有什么办法可以用c语言解决这个问题吗?哦。我希望我理解正确。我假设您有一个与某个服务器交互的第三方应用程序,它由两个不同的命令(play和record)操作。您希望编写一个新的应用程序,以某种方式调用这些命令,问题在
有什么办法可以用c语言解决这个问题吗?哦。我希望我理解正确。我假设您有一个与某个服务器交互的第三方应用程序,它由两个不同的命令(play和record)操作。您希望编写一个新的应用程序,以某种方式调用这些命令,问题在于这种调用 你可以用C语言来做,但是你做的方式取决于你操作程序的方式。我将向您展示一些案例:
- 该程序是一个命令行工具。当程序运行时,通过命令行参数发送输入。通过重定向程序的标准输出来收集输出。查看
及其参数,即System.Diagnostics.Process.Start
,其中包含参数和输入/输出重定向选项ProcessStartInfo
- 该程序是一个控制台工具,不通过命令行参数操作。使用与上面相同的方法,但通过输入重定向提供输入
- 该程序是一个GUI程序,无法获取文本形式的输入。很可能是这样。在这里,您必须找到一种特定的方法来操作程序,例如使用一种称为挂钩的高级技术。或者,您可以发送命令,就像用户正在发出命令一样。查看
方法。这可能会有帮助。如何在这里得到结果是一个大问题。您可以解析屏幕或监视程序的某些状态或其他内容。这里的每个人都没有现成的解决方案李>System.Windows.Forms.SendKeys