我到处寻找这个问题的帮助,但这些都是为了与网络客户或网络客户进行沟通。
我想要一个从“服务器”运行的主应用程序和从网络上的桌面运行的客户端应用程序。我希望主应用程序能够在客户端应用程序中调用函数。这些客户端应用程序用于收集信息并发送回主应用程序。什么是最好的方式,以及实现这一目标最有效的“成本”?
我已经阅读了一些关于管道的内容,但不确定是否可以使用它?
谢谢。
答案 0 :(得分:1)
我会考虑只使用套接字,WCF或msmq(消息队列)。在配置Windows服务时,我经常遇到这样的问题 - 桌面应用程序如何与服务进行通信。我目前在许多情况下使用消息队列进行应用程序间通信,我发现它相对简单有效。对于像这样的工作,它经常被忽视。
答案 1 :(得分:0)
要从服务器应用调用客户端,您可以尝试ASP.NET SignalR。 使用signalR,您可以利用Hub APIs在客户端和服务器之间建立连接。
答案 2 :(得分:0)
这是一个简单的双向通信问题。我已经在这些步骤中使用WCF解决了这个问题:
使用一个公开的WCF服务器端点创建一个主应用程序服务器,而不是接受一些有用的信息“client ip”,“client web address”
创建客户端应用程序而不是托管WCF服务器端点,而不是接受服务器反馈通信
因此,当客户端应用程序启动时,它必须调用主应用程序服务器发送客户端端点地址
主应用程序服务器存储客户端信息,以备将来使用
当主应用服务器需要向客户端发送内容时,查找存储信息中的信息并尝试直接呼叫客户端。
描述比写c#
更复杂(你可以用websockets做所有og theese,但我从未尝试过)