2016-02-02 22 views
0

我有一個關於Windows C#服務的問題。 窗口服務是否可以在後臺運行並將其數據發送/接收到由用戶打開的C#獨立應用程序。如果是的話,它是如何完成的? 是否有其他更好的方法來建立窗口服務Windows服務c#將其數據發送到c#wpf應用程序

回答

1

是的,這可以完成,並有幾個選項。對於進程間通信 - 這基本上是你所要求的 - 你可以考慮使用NamedPipes或TCP或消息隊列(MSMQ,RabbitMQ等)的WCF。

通常情況下,如果服務或客戶端不存在,或者使用命名管道或TCP,當前連接必須可用,則消息將排隊。

WCF named pipe minimal example

+0

RabbitMQ是免費的,也是一個很好的工具。在生產中使用它約4年的路由消息,沒有一個問題。但是,如果你只需要發送給一個客戶端,它可能有點矯枉過正,因爲在將消息路由到多個客戶端時它確實發光。 – Kelly

0

是的,這是可能的。您可以運行像Windows服務這樣的服務,公開方法,並且一個或多個客戶端可以使用它。

一個例子是this

再見。

相關問題