VB中如何使用winsock与另一台计算机连接
1个回答
展开全部
'服务器端,在窗口上创建两个Winsock控件,名字分别为SockServer和SockClient,然后复制以下代码
Private Sub Form_Load()
With SockServer
.LocalPort = 2000 '指定端口号(一般指定1024以上的端口就好)
.Bind
End With
End Sub
'这里处理接收客户端发送来的信息
Private Sub SockClient_DataArrival(ByVal bytesTotal As Long)
Dim Tmp As String
SockClient.GetData Tmp '接收客户端发送来的信息
MsgBox Tmp '显示客户端发来的信息
End Sub
'这里是处理收到的连接请求
Private Sub SockServer_ConnectionRequest(ByVal requestID As Long)
SockClient.Close '防止曾经打开过SockClient
SockClient.Accept requestID '接受客户端的请求
End Sub
'当然服务器端也可以向客户端发送信息,如在窗口上创建一个Command1控件,然后再添加一下代码
Private Sub Command1_Click()
If SockClient.State = 7 Then '判断是否处于连接状态 7表示已经连接
SockClient.SendData "这是服务器端发来的信息"
End If
End Sub
'向客户端添加一个Winsock控件,名为SockClient,一个Command控件名字用默认的Command1,然后复制一下代码
Private Sub Form_Load()
SockClient.RemoteHost = "127.0.0.1" '这里应该填入服务器IP地址,如果是在同一台电脑上可以用127.0.0.1
SockClient.RemotePort = 2000 '这里是设置服务器打开的端口,由于前面服务器端口设为了2000,所以这里也要设置为2000
SockClient.Connect
End Sub
'连接成功后会激活Connect事件
Private Sub SockClient_Connect()
MsgBox "已经连接到了服务器:" & SockClient.RemoteHost
End Sub
'这里是接收服务器发送来的信息
Private Sub SockClient_DataArrival(ByVal bytesTotal As Long)
Dim Tmp As String
SockClient.GetData Tmp
MsgBox Tmp, vbOKOnly, "收到的信息"
End Sub
'这里是向服务器发送信息
Private Sub Command1_Click()
If SockClient.State = 7 Then '如果处于连接状态,则发送数据
SockClient.SendData "这是客户端发来的信息" '发送信息,内容可以任意
End If
End Sub
Private Sub Form_Load()
With SockServer
.LocalPort = 2000 '指定端口号(一般指定1024以上的端口就好)
.Bind
End With
End Sub
'这里处理接收客户端发送来的信息
Private Sub SockClient_DataArrival(ByVal bytesTotal As Long)
Dim Tmp As String
SockClient.GetData Tmp '接收客户端发送来的信息
MsgBox Tmp '显示客户端发来的信息
End Sub
'这里是处理收到的连接请求
Private Sub SockServer_ConnectionRequest(ByVal requestID As Long)
SockClient.Close '防止曾经打开过SockClient
SockClient.Accept requestID '接受客户端的请求
End Sub
'当然服务器端也可以向客户端发送信息,如在窗口上创建一个Command1控件,然后再添加一下代码
Private Sub Command1_Click()
If SockClient.State = 7 Then '判断是否处于连接状态 7表示已经连接
SockClient.SendData "这是服务器端发来的信息"
End If
End Sub
'向客户端添加一个Winsock控件,名为SockClient,一个Command控件名字用默认的Command1,然后复制一下代码
Private Sub Form_Load()
SockClient.RemoteHost = "127.0.0.1" '这里应该填入服务器IP地址,如果是在同一台电脑上可以用127.0.0.1
SockClient.RemotePort = 2000 '这里是设置服务器打开的端口,由于前面服务器端口设为了2000,所以这里也要设置为2000
SockClient.Connect
End Sub
'连接成功后会激活Connect事件
Private Sub SockClient_Connect()
MsgBox "已经连接到了服务器:" & SockClient.RemoteHost
End Sub
'这里是接收服务器发送来的信息
Private Sub SockClient_DataArrival(ByVal bytesTotal As Long)
Dim Tmp As String
SockClient.GetData Tmp
MsgBox Tmp, vbOKOnly, "收到的信息"
End Sub
'这里是向服务器发送信息
Private Sub Command1_Click()
If SockClient.State = 7 Then '如果处于连接状态,则发送数据
SockClient.SendData "这是客户端发来的信息" '发送信息,内容可以任意
End If
End Sub
镭速传输
2024-10-28 广告
2024-10-28 广告
在深圳市云语科技有限公司,我们深知远程传输大文件的重要性与便捷性。为此,我们推荐使用高效的文件传输服务,这些服务通常支持断点续传,确保大文件传输的稳定与安全。用户只需简单上传,系统即可自动处理,无论文件大小,都能实现快速、可靠的远程传输。同...
点击进入详情页
本回答由镭速传输提供
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询