VB判断网络连接

来源:百度知道 编辑:UC知道 时间:2024/06/04 15:13:02
在做一个小程序,要求判断网络是否连接正常。
无论是拨号或者是LAN只类,只要连上了互连网就可以。
返回一个TRUE,否则……
以前找到过这个代码,现在找不到了。
分不多,大哥门就帮帮忙!
不对,我把PPPOE的连接(就是ADSL宽带连接)断开,Online()返回的仍然是True....
不是我要的结果……

Private Declare Function InternetGetConnectedState Lib "wininet.dll" (ByRef dwFlags As Long, ByVal dwReserved As Long) As Long
Private Sub Form_Load()
If InternetGetConnectedState(0&, 0&) Then
MsgBox "网络已连接"
Else
MsgBox "当前没有联网"
End If
End Sub

Private Declare Function RasEnumConnections Lib "RasApi32.dll" Alias "RasEnumConnectionsA" (lpRasCon As Any, lpcb As Long, lpcConnections As Long) As Long
Private Declare Function RasGetConnectStatus Lib "RasApi32.dll" Alias "RasGetConnectStatusA" (ByVal hRasCon As Long, lpStatus As Any) As Long

Private Const RAS95_MaxEntryName = 256
Private Const RAS95_MaxDeviceType = 16
Private Const RAS95_MaxDeviceName = 32

Private Type RASCONN95
dwSize As Long
hRasCon As Long
szEntryName(RAS95_MaxEntryName) As Byte
szDeviceType(RAS95_MaxDeviceType) As Byte
szDeviceNa