c# - Windows Service通信,套接字,C#

标签 c# windows sockets service

我正在编写需要安装在远程主机上的服务器端应用程序和Windows服务
服务将CPU使用率返回给服务器端应用程序-这不是问题
服务器端应用程序将服务部署在远程主机上。 -也不是问题

问题:
但是,当我不想对IP地址进行硬编码时,如何在两者之间建立套接字连接? (用于可伸缩性)-我需要使用多播还是有一些there回的方法?除了使用套接字,还有其他解决方案吗? --
我是编写Windows服务的新手。

我需要帮助弄清楚如何在不对IP-addr进行硬编码的情况下在服务器和服务之间进行通信。

先感谢您。

我的解决方案:
我创建了一个Windows服务,该服务使用Server应用程序的IP和端口读取xml文件。因此,当我部署客户端应用程序时,我还会创建一个包含网络信息的xml文件。
问候亚历克斯

最佳答案

现在,许多通信平台都使用网络发现。在codeproject上有一篇文章,详细介绍了有关使用网络发现的信息。

The problem was, I did not know what machine name the server was running on, in fact I wanted this to be flexible, and selectable by the user.



似乎与http://www.codeproject.com/Articles/16113/Retreiving-a-list-of-network-computer-names-using有关

您是否考虑过使用WCF?

http://msdn.microsoft.com/en-us/library/ms731082.aspx

关于多播,您可以让WCF服务器多播宣布其在网络上的可用性。见http://msdn.microsoft.com/en-us/library/dd456782.aspx

关于c# - Windows Service通信,套接字,C#,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16099737/

相关文章:

c# - 当通过 TypeBuilder.CreateType 实现具有参数为 'in' 的方法的接口(interface)时,抛出 TypeLoadException

c# - 身份服务器 4 API 身份验证失败

Windows CMD 删除目录

c# - "A first chance exception of type ' System.BadImageFormatException ' "在 64 位计算机上构建后

python - 尝试对非套接字的操作(尝试修复很多)

C#如何制作一个简单的UDP服务器

c# - 为什么后台垃圾收集有时会暂停我的应用程序,我该如何防止它发生?

c# - Entity Framework 6 Code-First 级联删除自引用实体

c++ - 如何取消引用函数指针并在 MSVC++ 下读取为数据?

C : Linux Sockets: Recvfrom() too slow in fetching the UDP Packets