代码之家  ›  专栏  ›  技术社区  ›  Dark Star1

为什么C#会触发另一台机器上的套接字超时问题?

  •  0
  • Dark Star1  · 技术社区  · 16 年前

            private bool openConnection(out IPEndPoint connection_Point)
        {
            bool connected = false;
            connection_Point = new IPEndPoint(m_address, m_port);
            m_sock = new Socket(AddressFamily.InterNetwork, SocketType.Stream, ProtocolType.Tcp);
            m_sock.SetSocketOption(SocketOptionLevel.Socket, SocketOptionName.ReuseAddress, 1);
            try
            {
                m_sock.Connect(connection_Point);
                connected = true;
            }//end of try logic
            catch (SocketException err)
            {
                connected = false;
                connection_Point = null;
                MessageBox.Show("Socket Exception thrown: " + err);
            }
    
            return connected;
        }
    
    2 回复  |  直到 16 年前
        1
  •  2
  •   Remus Rusanu    16 年前

    ping只会告诉IP地址是否响应ping。要确认TCP套接字可以打开,请在新机器的侦听端口上尝试telnet。如果telnet无法连接,可能的罪魁祸首是防火墙和/或IPSec。

        2
  •  1
  •   STW    16 年前

    推荐文章