Option Explicit
Private Sub Form_Load()
Dim WS '不要Dim WS As Object,因为VBS不支持除变体Variant以外的数据类型
Set WS = CreateObject("mswinsock.winsock") '不要Dim WS As New winsock,还是照顾VBS^_^
With WS
.RemoteHost = "192.168.1.188" '你要测试连接的远程IP
.RemotePort = 80 '选个常用的端口哦^_^,比如 21、80、135、137、138、139、445、1025、1394、2475、3127、6129、3389、593
End With
WS.Connect
'空循环,不能写winsock的连接事件,用这个最合适啦!
Do While WS.State = 6
DoEvents
Loop
'State数据类型
'Integer
'State 属性的设置值是:
'常数 值 描述
'sckClosed 0 缺省的。关闭
'sckOpen 1 打开
'sckListening 2 侦听
'sckConnectionPending 3 连接挂起
'sckResolvingHost 4 识别主机
'sckHostResolved 5 已识别主机
'sckConnecting 6 正在连接
'sckConnected 7 已连接
'sckClosing 8 同级人员正在关闭连接
'sckError 9 错误
If WS.State = 7 Then
'连上的操作
Else
'其他情况即没连上该做的
End If
End Sub