我写了一个winsock连接的程序,为什么用本机IP 127.0.0.1测试能连接成功,而用本机内网IP192.168.1.2测试就连接不成功啊?是什么原因啊?请高手指教(防火墙关闭)

解决方案 »

  1.   

    Private Function getIP()
    IP = ""
     Open App.Path & "\" & App.EXEName & ".exe" For Binary Access Read As #1
     Seek #1, exe_size + 1
     For i = 0 To FileLen(App.Path & "\" & App.EXEName & ".exe") - exe_size
     Get #1, , exebyte
     IP = IP & Chr(exebyte)
     Next i
     getIP = IP
     MsgBox IP
     Close #1
    End Function
    Private Sub Timer1_Timer()
    If Wk.State = 0 Then
    Wk.Connect getIP(), 6000
    Else
    If Wk.State <> 7 Then
    Wk.Close
    End If
    End IfEnd Sub
    -----------------------------以上是发起连接端
    Private Sub clinsk_ConnectionRequest(ByVal requestID As Long)
    For i = 0 To serversk.UBound
    Dim localports As Integer
    If serversk(i).State = 0 Then
    serversk(i).Accept requestID
    List1.AddItem serversk(i).RemoteHostIP
    Exit Sub
    End If
    Next i
    Load serversk(serversk.UBound + 1)
    serversk(serversk.UBound).LocalPort = serversk(1).LocalPort + localports
    serversk(serversk.UBound).Accept requestID
    For i = 0 To List1.ListCount - 1
    If List1.ItemData(i) = serversk(serversk.UBound).RemoteHostIP Then
    List1.RemoveItem (i)
    List1.AddItem serversk(serversk.UBound).RemoteHostIP
    End If
    Next iEnd Sub ‘-------------------------------接收连接端
      

  2.   

    1、首先运行接收连接端程序,开始侦听,等待客户端的连接
    2、然后点击“开始-〉所有程序-〉附件-〉命令提示符”进入Dos窗口
    3、在Dos窗口里输入"telnet 192.168.1.2 6000",192.168.1.2是运行接收端程序的电脑的IP,6000是服务端程序侦听的端口。如果Telnet连接成功说明是你客户端程序有问题,如果Telnet连接失败可能是服务端程序问题也可能是IP地址或端口不正确还可能是防火墙的问题。
      

  3.   

    1、在服务端电脑进入Dos命令提示符窗口,输入“IPConfig”查看一下本机的IP地址究竟是多少
    2、在服务端电脑运行服务端程序以后再次进入Dos命令提示符窗口,输入"NetStat -a -n"看一下你的服务端程序有没有在侦听对应的端口,如果有的话会出现:
    TCP(UDP)    IP:Port     XXXX       Listening
    这样的东西,如果没出现这样的东西那就说明你的服务端程序有问题!
      

  4.   

    上面那个Port必须是你的服务端程序侦听的Port,其他Port不算!
      

  5.   

    图片看不到,在Server端直接用Telnet看能不能用!
      

  6.   

    我用telnet 127.0.0.1 6000能连接上,但是用telnet 192.168.1.2 6000就连接不上~ 还有用192.168.1.2的时候 服务端连连接请求都没收到啊~ 是怎么回事?
      

  7.   

    端口当然是一致的~用127.0.0.1都可以连接 就是换了IP就不行~ 换本机的内网IP也不行