关于VB的网络编程

来源:百度知道 编辑:UC知道 时间:2024/05/21 17:00:04
小弟要用VB编写一个网络程序,C/S模式,主要满足3个条件:
1:客户端向服务端提交用户名。
2:当服务端接受5个链接时,再有链接给予提示链接已满。
3:服务端给客户端随机分配0-4,5个随机整数。
呵呵小弟就这三个问题弄不通啊,希望大家帮忙 4楼的朋友能给些代码吗谢谢!

页面上放6个winsock控件,1个负责LISTEN端口(假定为A),5个负责接收并处理对方的数据.

当LISTEN的winsock控件A接收到连接请求后,检查其他5个的状态(XXX.State),有空闲的就用那个空闲的来同意连接请求(XXX.Accept)并处理后续数据,A继续LISTEN端口.
如果5个的状态都是使用中,那么A直接断开连接请求并继续LISTEN端口.

Private Sub Form_Load()

Winsock1.LocalPort = 12345

End Sub

Private Sub Winsock1_ConnectionRequest(ByVal requestID As Long)

'当Winsock1收到连接请求的时候检查其他Winsock的状态,如果有状态是空闲的则由空闲的Winsock去接受连接请求

'我不记得空闲的状态是不是0了,你需要上网自己查查

If Winsock2.State = 0 Then

Winsock2.Accept requestID

ElseIf Winsock3.State = 0 Then

Winsock3.Accept requestID

ElseIf Winsock4.State = 0 Then

Winsock4.Accept requestID

ElseIf Winsock5.State = 0 Then

Winsock5.Accept requestID

ElseIf Winsock6.State = 0 Then

Winsock6.Accept requestID

Else

Winsock1.Close
Winsock1.Listen