您的位置:程序门 -> vb -> 网络编程



winsock编程的套接字不成块错误


[收藏此页] [打印本页]选择字色:背景色:字体:[][][]


winsock编程的套接字不成块错误[已结贴,结贴人:major_cd]
发表于:2007-01-25 12:14:32 楼主
本人在前一段使用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
发表于:2007-01-25 13:06:581楼 得分:50
这个vb暂时没办法解决的,建议你在connectionrequest里面加on   error。。。。处理错误
发表于:2007-01-25 13:07:282楼 得分:0
然后你修改一下你的客户端
链接一次失败后尝试多次
发表于:2007-01-25 16:00:243楼 得分:0
加上错误处理,已有的连接不会断掉还是怎样?服务端不用重启,客户端就可以再连接上来而吗?


快速检索

最新资讯
热门点击