我正在尝试弄清楚如何使用winsockets来将我的游戏转变为可在局域网上玩的游戏。我读过一些winsocket文档,但我不明白客户端如何才能获得所有在LAN上创建的游戏。
它是否必须尝试“连接”到LAN上的每个IP,就像尝试连接到192.168.0.1,然后是192.168.0.2,等等?有没有更好的方法?
发布于 2010-07-09 07:25:18
您可以使用广播在LAN上通告您的服务器。然后,客户端可以监听这些广播,以“查找”服务器。
有关更多信息,请查看此处:http://tangentsoft.net/wskfaq/intermediate.html#broadcast
发布于 2010-07-09 07:26:56
通常,这些游戏服务器使用本地UDP广播,这是所有客户端接收并可以处理的东西,只要它们正在侦听它。
下面是我找到的一些示例客户端和服务器代码,您可能会对它们感兴趣:http://visual-c.itags.org/visual-c-c++/29424/
发布于 2010-07-22 13:10:02
我认为有两种可能的方法来做到这一点。
如果你需要一个快速和简单的方法,第二个选项将是伟大的,但请记住,大多数UDP数据包将被浪费,因为它们只被每个客户端使用一次。
对于这个问题,第一种选择是更通用和可扩展的解决方案。然而,它可能需要更多的时间来设计和实现。
https://stackoverflow.com/questions/3208757
复制相似问题