200分问几个问题!

xxuu503 2005-12-10 12:36:37
:)

1:不用MulticastSocket,如何发广播?

想用Socket发广播!

说明白需求:局域网聊天工具,在软件登录的时候,广播一条msg,

然后,登陆过的用户可以接受这条msg来,刷新用户列表

同时返回去一个msg。用于让刚登陆的机器建立用户列表

因为不想多建个MulticastSocket和DataGramSocket!

所以想利用已经打开的Socket!


2:如何在java中调用DOS命令(例如:NET VIEW),要取得返回值

3:大家喜欢用什么广播?
...全文
428 23 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
23 条回复
切换为时间正序
请发表友善的回复…
发表回复
Mark_Chen 2005-12-12
  • 打赏
  • 举报
回复
帮顶!
老無所依 2005-12-12
  • 打赏
  • 举报
回复
不太清楚,帮你顶~~~
kingofhawks 2005-12-12
  • 打赏
  • 举报
回复
只会第二个郁闷,网络俺不懂.
Runtime.getRuntime().exec()可以执行命令.读取stdout用Process.getInputStream()
redgirl520 2005-12-11
  • 打赏
  • 举报
回复
待遇啊?俩字:剥削~
最大的头头们拿很多工资,底层的拿的不多.
不过以楼主这份好学的积极主动性,应该可以拿的比别人多.
xxuu503 2005-12-11
  • 打赏
  • 举报
回复
回复人: redgirl520(小鱼鱼) ( ) 信誉:100 2005-12-11 10:31:00 得分: 0


xxuu503(学会糜烂和挥霍,恐惧不安和堕落!)
是上海中和的???????




不是哪儿的,哪儿待遇如何?:)
xxuu503 2005-12-11
  • 打赏
  • 举报
回复
不是阿

IPmessage是免费软件吧
redgirl520 2005-12-11
  • 打赏
  • 举报
回复
xxuu503(学会糜烂和挥霍,恐惧不安和堕落!)
是上海中和的???????

chuting1 2005-12-11
  • 打赏
  • 举报
回复
广播接收端加flag接收标志返回
xxuu503 2005-12-11
  • 打赏
  • 举报
回复
再顶!
xxuu503 2005-12-10
  • 打赏
  • 举报
回复
靠,如果有人答了,另开新贴,接着给分!在这儿放不了200分!都忘了这回事了!
xxuu503 2005-12-10
  • 打赏
  • 举报
回复
回复人: zyg158((DD)OTP) ( ) 信誉:100 2005-12-10 21:24:00 得分: 0


最新的用户列表始终存放在服务器上,每当一个客户端登陆时,都会给服务器发送登陆请求,这时服务器就可以将这个用户添加到用户列表中了,然后向列表中的每个用户发送一个有xx客户登陆的通知,让其他客户端更新自己的用户列表。
该用户登陆成功后自动从服务器上下载现在在线的所有用户列表信息。

用户退出时是同样的原理。

用户非正常退出情况
服务器定时的向各个客户端发送是否在线的确认数据包,如果得到正常反馈说明在线;否则就认为该客户已下线,向现在的客户列表中的除了这个客户的其他客户端发送该客户端下线通知,使之更新用户列表

以上所有操作均不是广播地址,都是通过点对点方式通信的


试想一下:
腾讯的QQ会在有人上线的时候向所有的ip地址发送广播信息吗,显然不会,光ip地址数都数不清
我说的是极端情况
换成局域网也有问题,比如客户端和服务器、或客户端之间不在同一个网段,
那种发送广播地址的做法不就行不通了



------------------------------------------------------
没有服务器!你知道IPMessage这个软件么?

这个软件没有服务器,都是客户端!局域网内谈话很方便的!

我们公司拿它作项目交流的工具!

其实这种软件,根本不考虑像qq那么大的应用!

只是考虑给这个网段的255个IP用的!
wmzsl 2005-12-10
  • 打赏
  • 举报
回复
接分
zyg158 2005-12-10
  • 打赏
  • 举报
回复
最新的用户列表始终存放在服务器上,每当一个客户端登陆时,都会给服务器发送登陆请求,这时服务器就可以将这个用户添加到用户列表中了,然后向列表中的每个用户发送一个有xx客户登陆的通知,让其他客户端更新自己的用户列表。
该用户登陆成功后自动从服务器上下载现在在线的所有用户列表信息。

用户退出时是同样的原理。

用户非正常退出情况
服务器定时的向各个客户端发送是否在线的确认数据包,如果得到正常反馈说明在线;否则就认为该客户已下线,向现在的客户列表中的除了这个客户的其他客户端发送该客户端下线通知,使之更新用户列表

以上所有操作均不是广播地址,都是通过点对点方式通信的


试想一下:
腾讯的QQ会在有人上线的时候向所有的ip地址发送广播信息吗,显然不会,光ip地址数都数不清
我说的是极端情况
换成局域网也有问题,比如客户端和服务器、或客户端之间不在同一个网段,
那种发送广播地址的做法不就行不通了
xxuu503 2005-12-10
  • 打赏
  • 举报
回复
回复人: Mervyn(御剑乘风来,除魔天地间。) ( ) 信誉:100 2005-12-10 19:38:00 得分: 0


我写过一个和你的一样的程序,用的是udp的广播,建立点对点联接时才用socket




但是接受的时候不是得用DatagramSocket!因为有不同的用户,

难道每个用户除了开Socket还有开DatagramSocket(等其他人登陆)?
xxuu503 2005-12-10
  • 打赏
  • 举报
回复
3ks

我的mail:xuyinan503@163.com

给你发过邮件了!
Mervyn 2005-12-10
  • 打赏
  • 举报
回复
我写过一个和你的一样的程序,用的是udp的广播,建立点对点联接时才用socket
Mars.CN 2005-12-10
  • 打赏
  • 举报
回复
线程实现
我现在封装Socket类呢
我的想法是封装成类似VB的Winsock控件
现在有点难题,不过很快就解决了

用我的类可以轻松实现广播
给我你的mail
我的是suolong123@126.com
xxuu503 2005-12-10
  • 打赏
  • 举报
回复
或者这样说吧:

软件登录的时候,能通知所有登陆过的机器,让他们刷新用户列表

同时返回一个信息,让他通过这些信息来建立用户列表


这个应该有方法吧!请给个好的解决方案!(希望能够用到Socket,

因为我打开Socket(1000)用来接受发来的msg)
xxuu503 2005-12-10
  • 打赏
  • 举报
回复
关于问题2:我再问一下:linux有net view命令么?
xxuu503 2005-12-10
  • 打赏
  • 举报
回复
回复人: zyg158((DD)OTP) ( ) 信誉:100 2005-12-10 17:43:00 得分: 0


1.说明白需求:局域网聊天工具,在软件登录的时候,广播一条msg,
然后,登陆过的用户可以接受这条msg来,刷新用户列表
同时返回去一个msg。用于让刚登陆的机器建立用户列表
-------------------------------------------------
这根本就不是广播吧,这明明就是点对点啊,呵呵
当服务器接收到客户端登陆时,给客户端发送所谓的“广播消息”
其实就是收到客户登陆消息后,给客户端发送一个固定的消息而已


也许把,不过,可是刚登陆上来,没有用户列表阿

难道用socket从0试到255??

给个好的解决方案也可以,只要能实现所说的需求就可以了!
加载更多回复(3)

62,634

社区成员

发帖
与我相关
我的任务
社区描述
Java 2 Standard Edition
社区管理员
  • Java SE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧