TcpClient.Connect 方法

定义

使用指定的主机名和端口号将客户端连接到 TCP 主机。

重载

Connect(IPEndPoint)

使用指定的远程网络终结点将客户端连接到远程 TCP 主机。

Connect(IPAddress, Int32)

使用指定的 IP 地址和端口号将客户端连接到 TCP 主机。

Connect(IPAddress[], Int32)

使用指定的 IP 地址和端口号将客户端连接到远程 TCP 主机。

Connect(String, Int32)

将客户端连接到指定主机上的指定端口。

Connect(IPEndPoint)

Source:
TCPClient.cs
Source:
TCPClient.cs
Source:
TCPClient.cs

使用指定的远程网络终结点将客户端连接到远程 TCP 主机。

public:
 void Connect(System::Net::IPEndPoint ^ remoteEP);
public void Connect (System.Net.IPEndPoint remoteEP);
member this.Connect : System.Net.IPEndPoint -> unit
Public Sub Connect (remoteEP As IPEndPoint)

参数

remoteEP
IPEndPoint

您打算连接到的 IPEndPoint

例外

remoteEp 参数为 null

访问套接字时出错。

示例

下面的代码示例使用 IPEndPoint 连接到远程主机。

//Uses a remote end point to establish a socket connection.
TcpClient^ tcpClient = gcnew TcpClient;
IPAddress^ ipAddress = Dns::Resolve( "www.contoso.com" )->AddressList[ 0 ];
IPEndPoint^ ipEndPoint = gcnew IPEndPoint( ipAddress,11004 );
tcpClient->Connect( ipEndPoint );
//Uses a remote endpoint to establish a socket connection.
TcpClient tcpClient = new TcpClient ();
IPAddress ipAddress = Dns.GetHostEntry ("www.contoso.com").AddressList[0];
IPEndPoint ipEndPoint = new IPEndPoint (ipAddress, 11004);

tcpClient.Connect (ipEndPoint);
'Uses a remote endpoint to establish a socket connection.
Dim tcpClient As New TcpClient
Dim ipAddress As IPAddress = Dns.GetHostEntry("www.contoso.com").AddressList(0)
Dim ipEndPoint As New IPEndPoint(ipAddress, 11004)

tcpClient.Connect(ipEndPoint)

注解

调用此方法以建立与指定 IPEndPoint的同步远程主机连接。 在调用 Connect之前,必须使用 IP 地址和端口号创建 类的实例 IPEndPoint 。 使用此参数 IPEndPoint 作为 remoteEP 参数。 方法 Connect 将阻止,直到它连接或失败。 与远程主机连接后,使用 GetStream 方法获取基础 NetworkStream。 使用此 NetworkStream 来发送和接收数据。

注意

如果收到 , SocketException请使用 SocketException.ErrorCode 获取特定错误代码。 获取此代码后,可以参阅 Windows 套接字版本 2 API 错误代码 文档,了解错误的详细说明。

备注

当你在应用程序中启用网络跟踪后,此成员将输出跟踪信息。 有关详细信息,请参阅.NET Framework中的网络跟踪

注意

如果在使用 IPv6 地址时收到带有消息 This protocol version is not supported 的 NotSupportedException,请确保通过传递 InterNetworkV6在构造函数中启用了 IPv6。

另请参阅

适用于

Connect(IPAddress, Int32)

Source:
TCPClient.cs
Source:
TCPClient.cs
Source:
TCPClient.cs

使用指定的 IP 地址和端口号将客户端连接到 TCP 主机。

public:
 void Connect(System::Net::IPAddress ^ address, int port);
public void Connect (System.Net.IPAddress address, int port);
member this.Connect : System.Net.IPAddress * int -> unit
Public Sub Connect (address As IPAddress, port As Integer)

参数

address
IPAddress

你打算连接到的主机的 IPAddress

port
Int32

要连接到的端口号。

例外

address 参数为 null

port 不在 MinPortMaxPort 之间。

访问套接字时出错。

示例

下面的代码示例使用 IP 地址和端口号与远程主机连接。

//Uses the IP address and port number to establish a socket connection.
TcpClient^ tcpClient = gcnew TcpClient;
IPAddress^ ipAddress = Dns::Resolve( "www.contoso.com" )->AddressList[ 0 ];
tcpClient->Connect( ipAddress, 11003 );
//Uses the IP address and port number to establish a socket connection.
TcpClient tcpClient = new TcpClient ();
IPAddress ipAddress = Dns.GetHostEntry ("www.contoso.com").AddressList[0];

tcpClient.Connect (ipAddress, 11003);
'Uses the IP address and port number to establish a socket connection.
Dim tcpClient As New TcpClient
Dim ipAddress As IPAddress = Dns.GetHostEntry("www.contoso.com").AddressList(0)
tcpClient.Connect(ipAddress, 11003)

注解

调用此方法以建立与指定 IPAddress 和端口号的同步远程主机连接。 方法 Connect 将阻止,直到它连接或失败。 与远程主机连接后,使用 GetStream 方法获取基础 NetworkStream。 使用此 NetworkStream 来发送和接收数据。

注意

如果收到 , SocketException请使用 SocketException.ErrorCode 获取特定错误代码。 获取此代码后,可以参阅 Windows 套接字版本 2 API 错误代码 文档,了解错误的详细说明。

备注

当你在应用程序中启用网络跟踪后,此成员将输出跟踪信息。 有关详细信息,请参阅.NET Framework中的网络跟踪

注意

如果在使用 IPv6 地址时收到带有消息 This protocol version is not supported 的 NotSupportedException,请确保通过传递 InterNetworkV6在构造函数中启用了 IPv6。

另请参阅

适用于

Connect(IPAddress[], Int32)

Source:
TCPClient.cs
Source:
TCPClient.cs
Source:
TCPClient.cs

使用指定的 IP 地址和端口号将客户端连接到远程 TCP 主机。

public:
 void Connect(cli::array <System::Net::IPAddress ^> ^ ipAddresses, int port);
public void Connect (System.Net.IPAddress[] ipAddresses, int port);
member this.Connect : System.Net.IPAddress[] * int -> unit
Public Sub Connect (ipAddresses As IPAddress(), port As Integer)

参数

ipAddresses
IPAddress[]

要连接到的主机的 IPAddress 数组。

port
Int32

要连接到的端口号。

例外

ipAddresses 参数为 null

端口号无效。

尝试访问套接字时出错。

调用堆栈中的较高调用方无权执行所请求的操作。

此方法对于使用 InterNetwork 标志或 InterNetworkV6 标志的套接字有效。

示例

下面的代码示例使用 IP 地址和端口号与远程主机连接。

static void DoConnect( String^ host, int port )
{
   // Connect to the specified host.
   TcpClient^ t = gcnew TcpClient( AddressFamily::InterNetwork );
   array<IPAddress^>^IPAddresses = Dns::GetHostAddresses( host );
   Console::WriteLine( "Establishing Connection to {0}", host );
   t->Connect( IPAddresses, port );
   Console::WriteLine( "Connection established" );
}
static void DoConnect(string host, int port)
{
    // Connect to the specified host.
    TcpClient t = new TcpClient(AddressFamily.InterNetwork);

    IPAddress[] IPAddresses = Dns.GetHostAddresses(host);

    Console.WriteLine("Establishing connection to {0}", host);
    t.Connect(IPAddresses, port);

    Console.WriteLine("Connection established");
}

注解

此方法通常在调用 BeginGetHostAddresses 方法后立即使用,该方法可以为单个主机返回多个 IP 地址。 Connect调用 方法以建立与由元素数组和端口号指定的主机的IPAddress同步远程主机连接。 方法 Connect 将阻止,直到它连接或失败。 与远程主机连接后,使用 GetStream 方法获取基础 NetworkStream。 使用此 NetworkStream 来发送和接收数据。

注意

如果收到 , SocketException请使用 SocketException.ErrorCode 获取特定错误代码。 获取此代码后,可以参阅 Windows 套接字版本 2 API 错误代码 文档,了解错误的详细说明。

备注

当你在应用程序中启用网络跟踪后,此成员将输出跟踪信息。 有关详细信息,请参阅.NET Framework中的网络跟踪

注意

如果在使用 IPv6 地址时收到带有消息 This protocol version is not supported 的 NotSupportedException,请确保通过传递 InterNetworkV6在构造函数中启用了 IPv6。

另请参阅

适用于

Connect(String, Int32)

Source:
TCPClient.cs
Source:
TCPClient.cs
Source:
TCPClient.cs

将客户端连接到指定主机上的指定端口。

public:
 void Connect(System::String ^ hostname, int port);
public void Connect (string hostname, int port);
member this.Connect : string * int -> unit
Public Sub Connect (hostname As String, port As Integer)

参数

hostname
String

要连接到的远程主机的 DNS 名。

port
Int32

要连接到的远程主机的端口号。

例外

hostname 参数为 null

port 参数不介于 MinPortMaxPort 之间。

访问套接字时出错。

示例

下面的代码示例使用主机名和端口号与远程主机连接。

//Uses a host name and port number to establish a socket connection.
TcpClient^ tcpClient = gcnew TcpClient;
tcpClient->Connect( "www.contoso.com", 11002 );
//Uses a host name and port number to establish a socket connection.
TcpClient tcpClient = new TcpClient ();
tcpClient.Connect ("www.contoso.com", 11002);
'Uses a host name and port number to establish a socket connection.
Dim tcpClient As New TcpClient()

   tcpClient.Connect("www.contoso.com", 11002)

注解

调用此方法可建立与指定主机名和端口号的同步远程主机连接。 方法 Connect 将阻止,直到它连接或失败。 与远程主机连接后,使用 GetStream 方法获取基础 NetworkStream。 使用此 NetworkStream 来发送和接收数据。

如果启用了 IPv6 并 Connect(String, Int32) 调用 方法以连接到解析为 IPv6 和 IPv4 地址的主机,则会在 IPv4 地址之前先尝试与 IPv6 地址的连接。 如果主机未侦听 IPv6 地址,这可能会延迟建立连接的时间。

注意

如果收到 , SocketException请使用 SocketException.ErrorCode 获取特定错误代码。 获取此代码后,可以参阅 Windows 套接字版本 2 API 错误代码 文档,了解错误的详细说明。

备注

当你在应用程序中启用网络跟踪后,此成员将输出跟踪信息。 有关详细信息,请参阅.NET Framework中的网络跟踪

另请参阅

适用于