C# GUI与windows服务通信

C# GUI与windows服务通信,c#,.net,user-interface,windows-services,communication,C#,.net,User Interface,Windows Services,Communication,从Vista开始,我就知道C#无法将UI表单直接挂接到windows服务。这是在微软网站上声明的 我在这方面的问题是:“从UI到服务的最佳通信模式是什么?” 我听说过远程处理、Web服务和直接TCP。还有其他方法吗?它们与前面提到的方法相比排名如何?它们的实施有多复杂 我的应用程序是用于内部网,而不是internet。微软的平台将在双方,所以互操作性不是一个因素,但速度是。我的意思是我想通过网络上最小的数据包 TIA进程之间有许多通信方式——命名管道、邮件槽、内存映射文件、套接字、ActiveX

从Vista开始,我就知道C#无法将UI表单直接挂接到windows服务。这是在微软网站上声明的

我在这方面的问题是:“从UI到服务的最佳通信模式是什么?”

我听说过远程处理、Web服务和直接TCP。还有其他方法吗?它们与前面提到的方法相比排名如何?它们的实施有多复杂

我的应用程序是用于内部网,而不是internet。微软的平台将在双方,所以互操作性不是一个因素,但速度是。我的意思是我想通过网络上最小的数据包


TIA

进程之间有许多通信方式——命名管道、邮件槽、内存映射文件、套接字、ActiveX/COM对象等等。它实际上可以归结为您熟悉/熟悉哪些技术。

如果您打算使用.NET进行开发,请将其用于进程间通信。WCF极大地简化了开发,因为与特定通信机制(例如,套接字、管道等)相关的复杂性被抽象到统一的编程模型后面。因此,无论您选择使用http、tcp还是命名管道作为传输机制,编程模型都是相同的

我强烈推荐尤瓦尔·洛伊(Juval Lowy)的《WCF的一切》一书。你也可以访问他的网站,免费获取WCF代码示例

有关WCF的概述,请在dnrTV观看此免费节目。它涵盖了WCF的用途,并通过一些简单易懂的示例演示了WCF编程

如果您尚未创建Windows服务,但计划在C#中创建,则可以按照步骤进行