winsock断开后再连接,连接不上?为什么?大家帮忙!多谢

winsock断开后再连接,连接不上?为什么?大家帮忙!急急急急!谢谢
服务器端:
Private   Sub   Form_Load()
tcpserver.LocalPort   =   33333
tcpserver.Listen
End   Sub

Private   Sub   tcpserver_ConnectionRequest(ByVal   requestID   As   Long)
If   tcpserver.State   <>   sckClosed   Then   tcpserver.Close
tcpserver.Accept   requestID
End   Sub

Private   Sub   tcpserver_DataArrival(ByVal   bytesTotal   As   Long)
On   Error   Resume   Next
Dim   strdata   As   String
tcpserver.GetData   strdata,   vbString
If   strdata   =   "close "   Then
      tcpserver.Close
Else
      Text5.Text   =   strdata
End   If

End   Sub

客户端

Private   Sub   Form_Load()
tcpclient.RemoteHost   =   "127.0.0.1 "
tcpclient.RemotePort   =   33333
'tcpclient.Connect
End   Sub

Private   Sub   Form_Terminate()
tcpclient.Close
End   Sub

Private   Sub   login_Click()
tcpclient.Connect
login.Enabled   =   False
End   Sub

Private   Sub   logout_Click()
tcpclient.SendData   "close "
tcpclient.Close
login.Enabled   =   True
End   Sub

Private   Sub   sinfo_Click()
tcpclient.SendData   sno.Text  
End   Sub

这个客户端点击login按钮,完成与服务器的连接,然后再点击sinfo按钮,将sno.text的内容发送给服务器,服务器接受到数据后,显示再text5文本框内,
客户端的logout按钮按下后断开连接。

现在出现的问题是点击login,然后点击sinfo,数据传到服务器,服务器可以收到,但是点击logout后断开连接,然后再次点击login,然后点击sinfo发送数据就会出错,说是tcpclient.SendData   sno.Text   错误,为什么第一可以,断开第二次就发不过去呢?大家帮忙啊


------解决方案--------------------
我是这么做的,你试验一下:
Private Sub tcpserver_Close() '当断开时,再次继续监听后续连接
tcpserver.Close
tcpserver.LocalPort = 33333
tcpserver.Listen
End Sub