首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > VB >

Winsock编程的套接字不成块异常

2012-01-16 
Winsock编程的套接字不成块错误本人在前一段使用Vb6.0编写一个网络程序(局域网),使用了Winsock控件,同时允

Winsock编程的套接字不成块错误
本人在前一段使用Vb6.0编写一个网络程序(局域网),使用了Winsock控件,同时允许最多50个client同时登录,一开始还可以(指用了一段时间),不过现在,发现服务端经常出现关于Winsock的10035(套接字不成块)错误,出这个错后,所有的client与server的通讯就断了,必须从新启动SERVER的服务,我用的是TCP协议,根据观察,出现这个错是两个client几乎同时连接的时候容易出现,因为我是用一个server(0)   l诊听,有新连接就load   一个sock,不知道有什么问题请高手们指点指点!在下不胜感激!!


--------------代码如下

Private   Sub   Server_ConnectionRequest(Index   As   Integer,   ByVal   requestID   As   Long)
       
        Dim   i   As   Integer
        Dim   SConnIP   As   String
        Dim   dcount   As   Integer
        dcount   =   0
       
        If   Index   =   0   Then
                   
                SConnIP   =   Server(0).RemoteHostIP
                   
               
                  If   Not   SecurityCheck(lsSetupParamet.mSecurity,   SConnIP)   Then   Exit   Sub
                   
           

               
               
               
                For   i   =   1   To   Server.Count   -   1
                    If   Server(i).RemoteHostIP   =   SConnIP   And   Server(i).State   =   sckConnected   Then
                        CloseSock   i
                        Exit   For
                    End   If
                Next   i
               
                For   i   =   1   To   Server.Count   -   1
                    If   Server(i).State   =   sckClosed   Then
                        dcount   =   i    
                        Exit   For
                    End   If
                Next   i
               
                If   dcount   =   0   Then  

                    dcount   =   Server.Count  

                    Load   Server(dcount)
                End   If
               


                Server(dcount).Accept   requestID
                xSockSendata   (dcount),   "LOGIN_ "
               
               
        End   If
       
End   Sub


[解决办法]
这个vb暂时没办法解决的,建议你在ConnectionRequest里面加On error。。。。处理错误

热点排行