程序在win98下可以正常运行,但是上网以后,设了dns和网关,再运行会发生以上错误,
请问为什么呢???

解决方案 »

  1.   

    Winsock1.Protocol = sckUDPProtocol
    Winsock1.LocalPort = 7958
    Winsock1.RemotePort = 5879
    Winsock1.Bind 7958
    这是端口,当触发Winsock1_DataArrival
    使用Winsock1.GetData str1, vbString时发生以上错误。不知有什么问题。
    这是客户端,另外有个服务器端,端口是5879。
      

  2.   

    win98下不接网络线可以, win2000/winxp上你不接网络线网络处于"断开"状态就会出这个问题, 这个时候你需要增加错误捕获处理来略过这个状态并给用户相应的提示
      

  3.   

    On Error Resume Next
        WinsockGAB.GetData Var, vbString
        If Err = 10054 Then
        MsgBox "一个人是不行滴,请等待别人加入!"
        Exit Sub
        End If
      

  4.   

    补充一下:刚才那个是在Private Sub WinsockGAB_DataArrival(ByVal bytesTotal As Long)
    里面写。
      

  5.   

    不行啊,循环出现这样的对话框“一个人是不行滴,请等待别人加入!”
    看来这个错误不能忽略,每次getdata都会出现错误。
      

  6.   

    MsgBox "一个人是不行滴,请等待别人加入!"
        Exit Sub
    注意:你加了这句“exit sub”没有?
      

  7.   

    //也不知道这样的错误是怎么产生的呢?3楼已经回答了这个问题了啊。
    你运行程序时DataArrival搜不到你bind的端口,当然就10054了。
      

  8.   

    //哦,为什么会搜不到我绑定端口啊,有解决方法吗?因为你绑定的端口是不存在或者没有发送正确信息过来,而你的程序傻乎乎地等他发过来。
    解决方法就是让你绑定的端口的程序打开并sentdata过来,否则只能靠错误屏蔽。