用winsock控件通讯,服务端也在同一台机器上监听9000端口,多次建立连接之后发现每次连接都通过一个不同的客户端端口去连接9000,并且已经关闭的连接端口状态是TIMED_WAIT,请问如何释放这些端口
解决方案 »
- VB MScomm读的数没有了字母
- 如何消除系统错误代码126
- 函数如何返回多个值?
- VB6 如何在文件复制完毕后提示成功呢???
- 在VB的ADO, 已有数据的RecordSet中可不可以再增加一个字段?
- 我想找全国手机号码段数据库,100分!!!
- 寻购程序,有酬谢,愿意的联系下
- F5运行datareport程序出错,哪怕是最简单的程序!错误见内!
- windows ce 相关
- vb5中的Grid32.ocx和Threed32在vb6中不能用了,怎么办?
- 怎样才能使MDI窗体上的最大、最小化按钮无效。
- 10022Socket not bound, invalid address or listen is not invoked prior to accept
●●●●●我是新手,我要提高,把分给我,谢谢!◆◆◆◆◆◆◆◆
●你好,我好大家好!希望我能成为你某方面的专家!谢谢支持!●
●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●Private Sub Winsock1_ConnectionRequest(Index As Integer, ByVal requestID As Long)
connectioncounts = connectioncounts + 1
Dim i As Integer
Dim findclosedwinsock As Boolean
Dim newwinsockid As Integer
If Index <> 0 Then Exit Sub
ts 90, "index=" & Index & ",requestid=" & requestID '
'MsgBox SockNum
For i = 1 To SockNum
'检查已经加载的winscok是否有未连接的
If winsockstate(Winsock1(i)) = sckClosed Or winsockstate(Winsock1(i)) = -100 Then
' MsgBox i
If findclosedwinsock = False Then
newwinsockid = i
findclosedwinsock = True
End If
If winsockstate(Winsock1(i)) <> -100 Then
Unload Winsock1(i)
End If
End If
Next i
If newwinsockid = 0 Then
'连接的客户数大于socket个数,加载socket
SockNum = SockNum + 1
newwinsockid = SockNum
End If
winsockhistory_id = winsockhistory_id + 1
Load Winsock1(newwinsockid)
'MsgBox newwinsockid
'On Error Resume Next
'MsgBox ClientInfo(newwinsockid).rtf8url
'MsgBox winsocksendok(newwinsockid) = True
'MsgBox Winsock1(newwinsockid).State
Winsock1(newwinsockid).Accept requestID