在 Windows 服务和窗体应用程序之间使用套接字进行进程间通信

Posted

技术标签:

【中文标题】在 Windows 服务和窗体应用程序之间使用套接字进行进程间通信【英文标题】:Interprocess communication using sockets between windows service and form app 【发布时间】:2011-02-09 04:23:49 【问题描述】:

我需要从 Windows 窗体向 Windows 服务发送命令。我已经尝试过 ServiceController 的 ExecuteCommand 但很难测试。

我计划将套接字用于 IPC,因为我也可以收到反馈。

如果有人能帮忙找到一个类似的例子,那就太好了。

谢谢。

【问题讨论】:

通常对于这样的 IPC,我更喜欢普通的套接字。它们简单且易于测试(只需 telnet/ncat 即可试用)。然而,一个问题是您必须选择一个可能导致冲突的侦听端口。出于这个原因,我更喜欢随机端口。 远程处理?如果您不期望太多,它真的很简单吗? 【参考方案1】:

如果您不介意第三方解决方案,我们的 MsgConnect (http://www.eldos.com/msgconnect/) 专为您的目的而设计,并且有一个示例。使用 MsgConnect,您可以使用 MMF 或套接字作为传输。

【讨论】:

【参考方案2】:

感谢 cmets。

我决定使用 wcf,this 真的很有帮助。

【讨论】:

以上是关于在 Windows 服务和窗体应用程序之间使用套接字进行进程间通信的主要内容,如果未能解决你的问题,请参考以下文章

如何使用 WCF 在 Windows 服务和 Windows 窗体之间进行通信?

Windows 服务和 Windows 窗体应用程序之间的通信

使用 WCF 通过 Windows 服务和 Windows 窗体应用程序进行通信

TCP over Bluetooth(Windows 套接字)

套接字阻止在 Java 服务器和 Python 客户端之间发送消息

Windows 中 Java 和 C 之间的任何 IPC 机制 - 不想要套接字