語言

UdpClient.Connect 方法

定義

建立預設的遠端主機。

多載

名稱 Description
Connect(IPEndPoint)

建立使用指定網路端點的預設遠端主機。

Connect(IPAddress, Int32)

建立使用指定 IP 位址與埠號的預設遠端主機。

Connect(String, Int32)

建立預設的遠端主機,使用指定的主機名稱和埠號。

Connect(IPEndPoint)

來源:
UDPClient.cs
來源:
UDPClient.cs
來源:
UDPClient.cs
來源:
UDPClient.cs
來源:
UDPClient.cs

建立使用指定網路端點的預設遠端主機。

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

參數

endPoint
IPEndPoint

一個 IPEndPoint 指定你打算傳送資料的網路端點。

例外狀況

存取該套接字時發生錯誤。

endPoint 是 null。

那是 UdpClient 關門的。

範例

以下範例使用 , IPEndPoint 建立預設的遠端主機。

//Uses a remote endpoint to establish a socket connection.
UdpClient udpClient = new UdpClient();
IPAddress ipAddress = Dns.Resolve("www.contoso.com").AddressList[0];
IPEndPoint ipEndPoint = new IPEndPoint(ipAddress, 11004);
try{
 udpClient.Connect(ipEndPoint);
}
catch (Exception e ) {
           Console.WriteLine(e.ToString());
       }
'Uses a remote endpoint to establish a socket connection.
Dim udpClient As New UdpClient()
Dim ipAddress As IPAddress = Dns.Resolve("www.contoso.com").AddressList(0)
Dim ipEndPoint As New IPEndPoint(ipAddress, 11004)
Try
   udpClient.Connect(ipEndPoint)
Catch e As Exception
   Console.WriteLine(e.ToString())
End Try

備註

此 Connect 方法會根據參數中指定的 endPoint 值建立預設的遠端主機。 一旦建立,你不必在每次呼叫 Send 方法時指定遠端主機。

建立預設遠端主機是可選的。 指定預設遠端主機會限制你只能使用該主機。 如果你想將資料報傳送到不同的遠端主機,必須再次呼叫該 Connect 方法,或在沒有預設遠端主機的情況下重新建立一個 UdpClient 。 如果你已經建立了預設的遠端主機,並且在呼叫 Send 方法時也提供了遠端主機, Send 將會拋出一個 SocketException。 如果您收到 SocketException,請使用 SocketException.ErrorCode 以取得特定的錯誤代碼。 取得這些程式碼後,你可以參考 Windows Sockets 版本 2 的 API 錯誤程式碼 文件,了解錯誤的詳細說明。

如果你呼叫該 Connect 方法,任何來自非預設位址的資料報都會被丟棄。 除非你繼承自 UdpClient,使用 Client 方法取得底層 Socket位址,並將 socket 選項設為 SocketOptionName.Broadcast,否則無法使用此方法將預設遠端主機設為廣播位址。

不過,如果你在呼叫IPAddress.Broadcast方法時指定Send,你可以將資料廣播到預設的廣播位址 255.255.255。 如果你的應用程式需要對廣播位址有更強的控制,也可以回退使用該 Socket 類別。

Note

由於 UDP 協定是無連線的,因此該 Connect 方法不會被阻擋。 如果你打算接收多播資料報,請不要呼叫該 Connect 方法。

另請參閱

適用於

Connect(IPAddress, Int32)

來源:
UDPClient.cs
來源:
UDPClient.cs
來源:
UDPClient.cs
來源:
UDPClient.cs
來源:
UDPClient.cs

建立使用指定 IP 位址與埠號的預設遠端主機。

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

參數

addr
IPAddress

你 IPAddress 打算傳送資料的遠端主機。

port
Int32

你打算傳送資料的埠號。

例外狀況

addr 是 null。

port 不介於 MinPort 和 MaxPort之間。

存取該套接字時發生錯誤。

範例

以下範例使用IP位址與埠號連接遠端主機。

//Uses the IP address and port number to establish a socket connection.
UdpClient udpClient = new UdpClient();
IPAddress ipAddress = Dns.Resolve("www.contoso.com").AddressList[0];
try{
    udpClient.Connect(ipAddress, 11003);
}
catch (Exception e ) {
           Console.WriteLine(e.ToString());
}
'Uses the IP address and port number to establish a socket connection.
Dim udpClient As New UdpClient()
Dim ipAddress As IPAddress = Dns.Resolve("www.contoso.com").AddressList(0)
Try
   udpClient.Connect(ipAddress, 11003)
Catch e As Exception
   Console.WriteLine(e.ToString())
End Try

備註

此Connect方法會根據 and addr 參數中指定的port值建立預設的遠端主機。 一旦建立,你不必在每次呼叫 Send 方法時指定遠端主機。

建立預設遠端主機是可選的。 指定預設遠端主機會限制你只能使用該主機。 如果你想將資料報傳送到不同的遠端主機,必須再次呼叫該 Connect 方法,或在沒有預設遠端主機的情況下重新建立一個 UdpClient 。 如果你已經建立了預設的遠端主機,並且在呼叫 Send 方法時也提供了遠端主機, Send 將會拋出一個 SocketException。 如果您收到 SocketException,請使用 SocketException.ErrorCode 以取得特定的錯誤代碼。 取得這些程式碼後,你可以參考 Windows Sockets 版本 2 的 API 錯誤程式碼 文件,了解錯誤的詳細說明。

如果你呼叫該 Connect 方法,任何來自非預設位址的資料報都會被丟棄。 除非你繼承自 UdpClient,使用 client 方法取得底層 Socket位址,並將 socket 選項設為 SocketOptionName.Broadcast,否則無法使用此方法將預設遠端主機設為廣播位址。

不過,如果你在呼叫IPAddress.Broadcast方法時指定Send,你可以將資料廣播到預設的廣播位址 255.255.255。 如果你的應用程式需要對廣播位址有更強的控制,也可以回退使用該 Socket 類別。

Note

由於 UDP 協定是無連線的,因此該 Connect 方法不會被阻擋。 如果你打算接收多播資料報,請不要呼叫該 Connect 方法。

另請參閱

適用於

Connect(String, Int32)

來源:
UDPClient.cs
來源:
UDPClient.cs
來源:
UDPClient.cs
來源:
UDPClient.cs
來源:
UDPClient.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

你打算傳送資料的遠端主機上的埠號。

例外狀況

那是 UdpClient 關門的。

port 不介於 MinPort 和 MaxPort之間。

存取該套接字時發生錯誤。

範例

以下範例使用主機名稱與埠號連接遠端主機。

 //Uses a host name and port number to establish a socket connection.
UdpClient udpClient = new UdpClient();
try{
    udpClient.Connect("www.contoso.com", 11002);
}
catch (Exception e ) {
           Console.WriteLine(e.ToString());
       }
'Uses a host name and port number to establish a socket connection.
Dim udpClient As New UdpClient()
Try
   udpClient.Connect("www.contoso.com", 11002)
Catch e As Exception
   Console.WriteLine(e.ToString())
End Try

備註

此Connect方法會根據 and port 參數中指定的hostname值建立預設的遠端主機。 一旦建立,你不必在每次呼叫 Send 方法時指定遠端主機。

建立預設遠端主機是可選的。 指定預設遠端主機會限制你只能使用該主機。 如果你想將資料報傳送到不同的遠端主機,必須再次呼叫該 Connect 方法,或在沒有預設遠端主機的情況下重新建立一個 UdpClient 。

如果你已經建立了預設的遠端主機,並且在呼叫 Send 方法時也提供了遠端主機, Send 將會拋出一個 SocketException。 如果您收到 SocketException,請使用 SocketException.ErrorCode 以取得特定的錯誤代碼。 取得這些程式碼後,你可以參考 Windows Sockets 版本 2 的 API 錯誤程式碼 文件,了解錯誤的詳細說明。

如果你呼叫該 Connect 方法,任何來自非預設位址的資料報都會被丟棄。 除非你繼承自 UdpClient,使用 client 方法取得底層 Socket位址,並將 socket 選項設為 SocketOptionName.Broadcast,否則無法使用此方法將預設遠端主機設為廣播位址。

不過,如果你在呼叫IPAddress.Broadcast方法時指定Send,你可以將資料廣播到預設的廣播位址 255.255.255。 如果你的應用程式需要對廣播位址有更強的控制,也可以回退使用該 Socket 類別。

Note

由於 UDP 協定是無連線的,因此該 Connect 方法不會被阻擋。 如果你打算接收多播資料報,請不要呼叫該 Connect 方法。

另請參閱

適用於