首页 新闻 会员 周边 捐助

如何向局域网的所有用户发送消息C#

0
悬赏园豆:5 [已解决问题] 解决于 2010-04-29 12:32

想做个局域网聊天工具,想实现开启程序时,就通知本局域网的其他用户“我”上线了;不知道怎么才能获取本局域网的所有用户的IP地址进行遍历;还有如果想做一个Internet上类似于QQ的软件怎样才能获取用户的真实IP呢...请高手帮忙,先谢谢了...

hahacjh的主页 hahacjh | 初学一级 | 园豆:170
提问于:2010-04-27 23:51
< >
分享
最佳答案
0

向255.255.255.255发送消息就能通知到局域网内所有电脑了

收获园豆:2
Gray Zhang | 专家六级 |园豆:17610 | 2010-04-28 00:15
其他回答(4)
0

楼上的方法是可以的,不过一般的局域网会划分多个子网,子网之间一般是不能发送广播消息的,如果是这样的话,上面的办法就无效了。

可以设计一个地址注册服务器,客户端登录后首先到地址注册服务器上注册一下地址。地址注册服务器发送消息给所有已注册的客户端(因为它那里有所有的地址)。

Internet 上类似QQ的软件也是一样的,需要一个地址注册服务器。其实QQ也是有一个类似的服务器的,不可能某个QQ上线后给所有 internet 上的QQ用户都广播一下的。

收获园豆:2
eaglet | 园豆:17139 (专家六级) | 2010-04-28 07:26
0

一般都是通知你的好友提示你上线了,并且是提示你的在线好友,所以好友在线后会把他的IP存在服务器端,这样你只需要遍历你的在线好友进行通知。

Astar | 园豆:40805 (高人七级) | 2010-04-28 08:32
0

向255.255.255.255发送广播包,别的机器收到你的广播包后回复,得到这些机器的相关信息。

收获园豆:1
小军人 | 园豆:236 (菜鸟二级) | 2010-04-28 09:17
0

还是中间架设服务器靠谱阿,看你的需求级别了

llj098 | 园豆:825 (小虾三级) | 2010-04-28 23:05
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册