Windows服务通信,套接字,C#

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

问题:但我如何设置两个之间的套接字连接,当我不想硬编码的IP地址? (为了可伸缩性) – 我需要使用多播还是有一些迂回的方式做到这一点? 有没有比使用套接字另一个解决scheme? – 我是编写Windows服务的新手。

我需要帮助弄清楚如何在服务器和服务之间进行通信,而不用硬编码IP-addr。

先谢谢你。

我的解决scheme:我创build了一个windows服务,用服务器应用程序的IP和端口读取一个xml文件。 所以当我部署我的客户端应用程序,我也创build一个XML文件的networking信息。 亚历克斯问候

现在很多通讯平台都使用网络发现, 有一篇关于使用网络发现的详细的代码项目的文章。

问题是,我不知道服务器运行的是什么机器名,实际上我想这是灵活的,并且可以由用户选择。

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

你有没有想过使用WCF?

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

关于组播,您可以让WCF服务器多播宣布它在网络上的可用性; 请参阅http://msdn.microsoft.com/en-us/library/dd456782.aspx

另一种解决方案可能是将服务创建为具有参数(端点IP地址)的控制台应用程序,然后将其与远程主机上的参数一起部署