VB查看局域网在线主机

求段源代码
例如查看路由的在线客户端。

追加。!!!!

T-T~~
我那个只是VB6。 - -||

and 哪一段在label控件里显示呢?
怎么在label里显示呢,写出来可以么?
我只是个菜鸟。- -||

'form中加个按钮
Option Explicit
Private Const INADDR_NONE As Long = &HFFFFFFFF
Private Const PING_TIMEOUT As Long = 500
Private Type ICMP_ECHO_REPLY
Address As Long
status As Long
RoundTripTime As Long
DataSize As Long
DataPointer As Long
Data As String * 250
End Type
Private Declare Function inet_addr Lib "WSOCK32.DLL" (ByVal s As String) As Long
Private Declare Function IcmpCreateFile Lib "icmp.dll" () As Long
Private Declare Function IcmpSendEcho Lib "icmp.dll" (ByVal IcmpHandle As Long, _
ByVal DestinationAddress As Long, ByVal RequestData As String, ByVal RequestSize As Long, _
ByVal RequestOptions As Long, ReplyBuffer As ICMP_ECHO_REPLY, ByVal ReplySize As Long, _
ByVal Timeout As Long) As Long
Private Declare Function IcmpCloseHandle Lib "icmp.dll" (ByVal IcmpHandle As Long) As Long

'##################################################################
'## 函数名称:ping
'## 参数:IP 为String型
'As Boolean'## 返回类型:As Boolean
'##################################################################
Public Function ping(IP As String) As Boolean
Dim ECHO As ICMP_ECHO_REPLY
Dim mystr As String
Dim hPort As Long
mystr = inet_addr(IP)
If mystr <> INADDR_NONE Then
hPort = IcmpCreateFile()
If hPort Then
Call IcmpSendEcho(hPort, mystr, 0, 0, 0, ECHO, Len(ECHO), PING_TIMEOUT) '发送回响请求报文,返回回响应答报文
Call IcmpCloseHandle(hPort)
End If
If ECHO.status = 0 Then ping = True
Else
ping = False
End If
End Function

Private Sub Command1_Click()
Dim IPC As String
Dim i As Integer
For i = 1 To 254
IPC = "192.168.1." & i
If ping(IPC) Then
Print IPC & "--PING成功"
Else
Print IPC & "--PING失败"
End If
Next
End Sub
温馨提示:内容为网友见解,仅供参考
第1个回答  2010-01-28
想怎么查看呢?如果只是想知道哪些主机开着,
在VB2008里有Ping语句可以用,可以把常用网段都查了。

Dim i As Integer
For i=0 To 255
If Ping ("192.168.0." & i.ToString) = True Then
Console.WriteLine ("网段192.168.0." & i.ToString & "在线")
End If
Next

VB查看局域网在线主机
'form中加个按钮 Option Explicit Private Const INADDR_NONE As Long = &HFFFFFFFF Private Const PING_TIMEOUT As Long = 500 Private Type ICMP_ECHO_REPLY Address As Long status As Long RoundTripTime As Long DataSize As Long DataPointer As Long Data As String * 2...

VB定刷新检测局域网机器
可以用类似PING的方法,如果通则是开机ELSE关机。这样的方法检测速度就看代码的执行速度了。这样的方法跟扫描一样,扫描一个IP段是需要一定的时间的。其实有更快的方法:每台机器都安装一个CLIENT,本机安装成SERVER。CLIENT一运行自动向SERVER发送一条数据,这时不管是几十台还是几百台,SERVER就可以在1秒...

VB知道局域网计算机名,ping是否在线。
开始->运行->cmd->net view 对方ip 知道对方计算机名查看对方ip 方法:开始->运行->cmd->ping 对方计算机名 或者 开始->运行->cmd->nbtstat -a 对方计算机名

vb 获取局域网内所有IP
调用API函数来实现就可以了!!获取局域网所有主机的机器名代码:Dim Root As DirectoryEntry = New DirectoryEntry("WinNT:")Dim Domains As DirectoryEntries = Root.Children Domains.SchemaFilter.Add("domain")Dim domain As New DirectoryEntry Dim Computers As DirectoryEntry For Each domain In root...

查看局域网计算机ip的VB代码
文本框输入主机名,点击按钮稍等一会可获得IP Option Explicit Private Const SYNCHRONIZE = &H100000 Private Declare Function OpenProcess Lib "kernel32" (ByVal dwDesiredAccess As Long, ByVal bInheritHandle As Long, ByVal dwProcessId As Long) As Long Private Declare Function CloseHandle Lib ...

用VB查看局域网主机mac地址
用VB查看局域网主机mac地址 2008-06-30 19:25 提问者: 匿名 | 悬赏分:80 在xp中,运行CMD,然后PING一下局域网中的一个主机,无论是否能PING通,只要主机在局域网中存活,那么用arp-a就能看出此IP对应的MAC,那么我现在想用VB写一个程序,输入一个IP地址,使得程序返回次IP对应的局域网主机中的MAC,如何用API...

VB6.0编程 判断主机是否在线,必须用主机名来判断,不要用IP来判断,例如...
说明局域网的DNS有问题 如果现在C电脑的主机名已经更新 你可以更新一下你的DNS 然后重新ping就可以了 这样就可以找到新的IP地址了。

如何用VB代码打开局域网上共享的文件夹
回答:你用regsnap或者regshot软件快照下注册表,再用深度那个工具修改下注册表,再用regsnap或者regshot软件快照下注册表,对比下两次的区别后,就能找到相关的注册表项了,找到后用操作注册表的API或者wscript更改掉相关的注册项即可。 开启或者关闭局域网共享的功能,其实就是更改注册表相应的键值。

VB如何判断局域网内,指定的机器是否开机。
一:路由器上的接口有对应的指示灯,对应的灯亮就表示对应的机器开机。二:用鼠标对着你要复制的文件右击出现菜单。选择:复制”,然后打开你指定的文件夹,在文件夹右击出现菜单,选择粘贴,就这样。

VB如何获取局域网内所有计算机的名字
VB声明 Declare Function WNetGetUser Lib "mpr.dll" Alias "WNetGetUserA" (ByVal lpName As String, ByVal lpUserName As String, lpnLength As Long) As Long 说明 获取一个网络资源用以连接的名字 返回值 Long,零表示成功。会设置GetLastError。如GetLastError是ERROR_EXTENDED_ERROR,则可用W...

相似回答