读书人

救急VB怎么判断与服务器电脑连接状态

发布时间: 2012-02-10 21:27:42 作者: rapoo

救急,VB如何判断与服务器电脑连接状态?
知道服务器电脑IP和密码,如何用VB判断连接状态?
在网上搜了一些贴子,有用WINSOCK控件的判断网卡工作状态,这种方法对我来说不可取,请教各位大虾有没其他好的方法来判断?

说明:是服务器电脑,不是SQL数据库,能判断连接状态即可!

[解决办法]
简单的方法就是Ping主机,比如:
shell "ping 192.168.11.1 > c:\plog.txt "
然后分析plog.txt中的内容即可

用API的网上搜索一下,示例代码有许多

[解决办法]
Option Explicit

Private Type QOCINFO
dwSize As Long
dwFlags As Long
dwInSpeed As Long
dwOutSpeed As Long
End Type

Private Const NETWORK_ALIVE_LAN As Long = &H1 ' LAN
Private Const NETWORK_ALIVE_WAN As Long = &H2 ' RAS
Private Const NETWORK_ALIVE_AOL As Long = &H4 ' AOL (Win95/98)

Private Declare Function IsDestinationReachable Lib "sensapi.dll " _
Alias "IsDestinationReachableA " _
(ByVal lpszDestination As String, _
lpQOCInfo As QOCINFO) As Long

Public Function IsNetConnectionAlive(ByVal strIP As String) As Boolean

Dim result As Long
Dim qoc As QOCINFO

qoc.dwSize = Len(qoc)

result = IsDestinationReachable(strIP, qoc) '测试IP

IsNetConnectionAlive = qoc.dwFlags
End Function
[解决办法]
"连接状态 ",那需要与服务器通讯.

PING方面,如果服务器禁PING了就没用

个人认为最好的办法是定期向服务器发送一个心跳包
[解决办法]
'知道服务器电脑IP和密码,如何用VB判断连接状态?
shell "net use Z: '服务器电脑IP\IPC$ ' '密码 ' 、USER: 'username ' "
...............
[解决办法]
老马的方法不错
假如一定实践内没有收到心跳 就判为断线

读书人网 >VB

热点推荐