首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > VB >

遍历所有机器,查看是否在线,这个有关问题有点难

2012-03-09 
遍历所有机器,查看是否在线,这个问题有点难?有近100台电脑, 每台电脑在启动后都在3000端口处监听, 但是可

遍历所有机器,查看是否在线,这个问题有点难?
有近100台电脑, 每台电脑在启动后都在3000端口处监听, 但是可能有某些电脑没有在线,
请问如何 遍历所有的所有电脑,知道有哪些电脑已经在线?

我用VB 中的winsocket 控件, 可以用TCP 协议,请指点.


[解决办法]
ping所有的ip,看看是否通,如果通表示在线,如果不通表示不在线。
[解决办法]
连接TCP3000端口,连不上就是不在线。
[解决办法]
winsock控件的connect方法失败时会出发其error事件
[解决办法]

探讨

连接TCP3000端口,连不上就是不在线。

[解决办法]
可以直接按IP地址扫描,看哪些IP机子开机了,然后再判断开机的这些是不是你指定的客户端。
[解决办法]
添加一个winsock控件;
初始化winsock(绑定端口和IP);
循环向子网所有IP发信息(send);
在SOCK_DataArrival中获得回应,确定该电脑开着.
[解决办法]
Private Sub Command3_Click()
Winsock1.Connect
End Sub

Private Sub Form_Load()
Me.AutoRedraw = True
End Sub

Private Sub Winsock1_Error(ByVal Number As Integer, Description As String, ByVal Scode As Long, ByVal Source As String, ByVal HelpFile As String, ByVal HelpContext As Long, CancelDisplay As Boolean)
Me.Print Number
Me.Print Description
End Sub

热点排行
Bad Request.