2012-01-10 51 views
1

我期待为一套.NET应用程序实现一个进程间消息传递解决方案,该应用程序可以在单个机器上从我们的工具链向每个正在运行的应用程序实例发送消息。过去我们通过使用命名管道很好地满足了我们的消息传递需求,并且我很好奇我是否可以调整现有基础设施来发送多播消息。 .NET管道是否支持这种行为?.NET中的传播管道?

回答

0

您可以使用WCF进行多播消息传送。这里是通过example walk

2

.Net可以使用本机程序可以使用的命名管道。查看System.IO.Pipes命名空间。特别是NamedPipeClientStreamNamedPipeServerStream类。这些只是命名管道的本地版本的封装,所以它将以您期望的方式运行。

+0

这听起来很有希望 - 我现有的消息传递实现完全采用这种方法。我认为命名管道具有组播功能,那么? – estanford 2012-01-10 15:56:11

+0

@estanford我相信*他们支持组播,但我没有足够的经验足以让他们100%确定他们的确做到了 – JaredPar 2012-01-10 15:59:01

0

Microsoft Messaging Queue (MSMQ)听起来很像你想要做的。

+0

这也是我的第一选择,但使用该应用的一些客户使用XP机器并且不打算很快移动。 MSMQ与XP存在棘手的关系,并且还要求我们启用某些需要管理员权限设置的操作系统功能,用户不一定具有这些功能。 – estanford 2012-01-10 15:54:56

+0

好的没有意识到XP的问题,但你不应该让管理员最初安装软件,只是让他们运行它? – 2012-01-10 15:56:16