服务器代码
Private Function s_state(state As Integer)
Select Case state
Case 0
s_state = "close"
Case 1
s_state = "open"
Case 2
s_state = "listening.."
Case 6
s_state = "connecting.."
Case 7
s_state = "connected.."
Case 9
s_state = "error"
Case Else
s_state = "close"
End Select
End Function
Private Sub command3_click()
socks.Close
Text3.Text = s_state(socks.state)
End Sub
Private Sub command1_click()
If socks.state = sckConnected Then
socks.SendData Text1.Text
Text3.Text = s_state(socks.state)
Else
MsgBox ("error...disconnect")
End If
End Sub
Private Sub Form1_Load()
socks.Close
socks.Protocol = sckTCPProtocol
socks.Listen
Text3.Text = s_state(socks.state)
End Sub
Private Sub Command4_Click()
If socks.state = sckClosed Then
socks.Listen
Else
socks.Close
End If
Text3.Text = s_state(socks.state)
End Sub
Private Sub socks_ConnectionRequest(ByVal requestID As Long)
If socks.state = sckListening Then
socks.Acceptrequest id
Text3.Text = "coonect to" & socks.RemoteHostIP
End If
End Sub
Private Sub socks_DataArrival(ByVal bytesTotal As Long)
Dim data As String
socks.GetData data
Text2.Text = data
Text3.Text = s_state(socks.state)
End Sub
客户代码
Private Sub Command1_Click()
sockc.Protocol = sckTCPProtocol
sockc.RemoteHost = Text4.Text
sockc.RemotePort = Text5.Text
Command3.Enabled = True
Command4.Enabled = True
Text3.Enabled = False
Text4.Enabled = False
Text5.Enabled = False
Command5.Visible = True
Command1.Visible = False
End Sub
Private Sub Command2_Click()
If sockc.state = sckConnected Then
sockc.SendData Text1.Text
Text3.Text = s_state(sockc.state)
Else
MsgBox ("error...disconnect")
End If
End Sub
Private Sub Command3_Click()
sockc.Close
Text3.Text = s_state(sockc.state)
End Sub
Private Sub Command4_Click()
If sockc.state = sckClose Then
sockc.Connect
Else
sockc.Close
End If
Text3.Text = s_state(sockc.state)
End Sub
Private Sub Command5_Click()
Command3.Enabled = False
Command4.Enabled = False
Text4.Enabled = True
Text5.Enabled = True
Command1.Visible = True
Command5.Visible = False
End Sub
Private Sub Form1_Load()
Command5.Visible = False
Text3.Text = s_state(sockc.state)
End Sub
Private Function s_state(state As Integer)
Select Case state
Case 0
s_state = "close"
Case 1
s_state = "open"
Case 2
s_state = "listening.."
Case 6
s_state = "connecting.."
Case 7
s_state = "connected.."
Case 9
s_state = "error"
Case Else
s_state = "close"
End Select
End Function
Private Sub sockc_DataArrival(ByVal bytesTotal As Long)
Dim data As String
sockc.GetData data
Text2.Text = data
Text3.Text = s_state(sockc.state)
End Sub
这些代码适用于客户和服务器信使但无法找到服务器的IP。为什么这些代码不起作用,为什么它无法连接到服务器?