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

VB怎么判断网络不通

2012-01-09 
VB如何判断网络不通VB如何判断网络不通[解决办法]方法一:Const INADDR_NONE As Long &HFFFFFFFFConst PI

VB如何判断网络不通
VB如何判断网络不通

[解决办法]
方法一:
Const INADDR_NONE As Long = &HFFFFFFFF
Const PING_TIMEOUT As Long = 500
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

Declare Function inet_addr Lib "WSOCK32.DLL " (ByVal s As String) As Long
Declare Function IcmpCreateFile Lib "icmp.dll " () As Long
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
Declare Function IcmpCloseHandle Lib "icmp.dll " (ByVal IcmpHandle As Long) As Long

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

Sub Command1_Click()
If Ping( "172.16.17.175 ") Then MsgBox "ping成功 " Else MsgBox "ping失敗 "
End Sub


热点排行