vb winsock客户端关闭后二次连接问题
winsork 发起连接时到结束前 不能再次发起连接!
就像你面前有个水杯 你要倒牛奶 又要倒水喝 ,所以你必须先喝完牛奶再倒水!
如果是多用户登陆:
winsork需要建立 控件组~
每个用户winsork1对应一个服务端的winsork1(n)
组成1对1的 连接关系!
在创建新的套接字之前要调用一个引入Ws2_32dll库的函数,所以在调用socket函数创建新的sockets之前要先调用WSAStartup函数。WSAStartup函数作用是引入Ws2_32dll库
服务端使用动态生成winsock的方法,不会出现这种情况,因为每个客户端来访问服务器的时候都会有唯一的winsock与其会话
反正我没丢过
Private Sub Winsock1_ConnectionRequest(Index As Integer, ByVal requestID As Long)
Static n As Integer
If n = 0 Then
n = n + 1
Load Winsock1(n) '实例化控件
End If
当然用winsock控件数组了, 只要有连接就自动创建和winsock数组,然后服务器端代码里用控件数组循环语句把建立套接字的过程写进去。 这样就可以有无限个客户端与服务器连接并且收发信息, 但是问题是,你的服务器得坚挺
0条评论