2012-01-10 42 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