C# 从Windows服务向正在运行的WinForm应用程序发送命令
我有两个独立的程序。一种是winform,它承载一个正在运行的进程,输出/输入通过该窗体重定向。这个过程是罐装产品,几乎不可能自己修改 第二个程序是一个服务,它可以从正在运行的进程中收集数据,但不直接与winform交互 我的目标是将一个字符串从服务发送到winform,然后与正在运行的进程交互。或者,我不介意直接向进程发送命令,但我敢打赌,如果不修改正在运行的进程源代码,这是不可能实现的C# 从Windows服务向正在运行的WinForm应用程序发送命令,c#,winforms,service,C#,Winforms,Service,我有两个独立的程序。一种是winform,它承载一个正在运行的进程,输出/输入通过该窗体重定向。这个过程是罐装产品,几乎不可能自己修改 第二个程序是一个服务,它可以从正在运行的进程中收集数据,但不直接与winform交互 我的目标是将一个字符串从服务发送到winform,然后与正在运行的进程交互。或者,我不介意直接向进程发送命令,但我敢打赌,如果不修改正在运行的进程源代码,这是不可能实现的 我看过命名管道,但我不确定这是最好的方法。两个程序都托管在同一台计算机上。我只是不确定我的选择是什么。有什
我看过命名管道,但我不确定这是最好的方法。两个程序都托管在同一台计算机上。我只是不确定我的选择是什么。有什么想法吗?=) 实现这种交流有多种选择。您主要可以使用(WCF),实现这种通信有多种选择。如果概述了Windows中可用的IPC(进程间通信)选项,则主要可以使用(WCF),全范围
- 剪贴板
- COM
- 数据副本
- DDE
- 文件映射
- 邮箱
- 管道
- RPC
- Windows套接字
- 或类似
- 在数据库或文件中记录命令/状态
- 剪贴板
- COM
- 数据副本
- DDE
- 文件映射
- 邮箱
- 管道
- RPC
- Windows套接字
- 或类似
- 在数据库或文件中记录命令/状态
其中,命名管道可能最适合您的特定应用程序。我过去也用过类似的东西。它们易于设置和使用。假设我继续查看命名管道。从我看到的MSDN示例来看,我的服务似乎必须完全生成winform进程。对吗?这会让我的过程有点奇怪lol@Residualfail:否,进程可以彼此独立启动。两个人都不一定是另一个人的孩子。假设我继续研究命名管道。从我看到的MSDN示例来看,我的服务似乎必须完全生成winform进程。对吗?这会让我的过程有点奇怪lol@Residualfail:否,进程可以彼此独立启动。两者都不一定是对方的孩子。