TCP客户端问题

时间:2014-05-11 20:16:38

标签: c# sockets tcp

关于tcp客户端类,我几乎没有问题(和问题)。 1.我应该给它构造函数,我的或我要连接的远程主机什么IP?因为在MSDN中我看到构造函数采用本地 ip端点,我无法理解它。 2.这种说法可能是什么原因:

TcpClient client = new TcpClient(ip.Text, port: portNum);

停止代码运行而不抛出异常?

2 个答案:

答案 0 :(得分:0)

1。您应该给构造函数

的IP

您应该提供要连接的IP,查看IPAddress类。

2。声明的原因

为什么键入 port: portNum? 只需写下 official documentation 中的内容:

//Creates a TCPClient using host name and port.
TcpClient tcpClientB = new TcpClient ("www.contoso.com", 11000);

答案 1 :(得分:0)

System.Net.Sockets.TcpClient有四个构造函数。似乎是混淆源的两个构造函数是:

  1. TcpClient(IPEndPoint) - 将其绑定到指定的本地端点。
  2. TcpClient(String,Int32) - 连接到指定主机上的指定端口。
  3. 如果您的计算机有多个NIC(例如以太网和WiFi)并且您想要选择使用哪个NIC,那么构造函数#1非常有用。如果以这种方式构造TcpClient实例,那么您将显式调用TcpClient.Connect来连接远程主机和端口号。

    构造函数#2创建TcpClient实例(自动选择本地端点)并立即使用提供的远程主机和端口进行连接。