香港澳洲领事馆時间:关于VB的程序,各路大侠帮看下有没有什么问题

来源:百度文库 编辑:神马品牌网 时间:2024/05/04 12:35:33
客户端
Private Sub Command1_Click()
If Winsock1.State = sckClosed Then
'设置服务器的IP地址
Winsock1.RemoteHost = Trim(Text1.Text)
'设置服务器的端口号
Winsock1.RemotePort = Trim(Text2.Text)
'发出连接请求
Winsock1.Connect
End If
End Sub

Private Sub Form_Load()
Text1 = "11.177.210.100"
Text2 = 6000
End Sub

Private Sub Winsock1_Close()
Winsock1.SendData Text3.Text
End Sub

Private Sub Winsock1_DataArrival(ByVal bytesTotal As Long)
Dim mystr As String
'使用GetData 方法接受数据
Winsock1.GetData mystr
Text4.Text = mystr
Option1.Value = True
End Sub

服务器端
'设置本地端口号并打开监听
Private Sub Form_Load()
'设置本地端口号为6000
Winsock1.LocalPort = 6000
'打开监听
Winsock1.Listen
End Sub

Private Sub Text1_Change()
Winsock1.SendData Text1.Text
End Sub

Private Sub Winsock1_Close()
Winsock1.Close
Winsock1.Listen
MsgBox "与客户的连接断开"
End Sub

'当服务器端程序接收到客户端的连接请求消息后,根据用户的需要是允许建立连接,还是不允许建立连接
Private Sub Winsock1_ConnectionRequest(ByVal requestID As Long)
Dim myStr As String
'如果当前状态处于连接状态,则先关闭连接,
'再接收新的请求
If Winsock1.State <> sckClosed Then
myStr = MsgBox("客户请求建立连接,是否允许?", vbOKCancel)
If myStr = vbOK Then
'关闭连接
Winsock1.Accept requestID
Winsock1.SendData "接受"
MsgBox "与客户建立了新连接"
End If
End If

End Sub
'当服务器端程序接收到数据后,将数据显示在文本框中
Private Sub Winsock1_DataArrival(ByVal bytesTotal As Long)
Dim myStr As String
'使用GetData方法接受数据
Winsock1.GetData myStr
Text2.Text = myStr

End Sub

你运行下就知道有没问题撒