Sdílet prostřednictvím


UdpClient Konstruktory

Definice

Inicializuje novou instanci UdpClient třídy .

Přetížení

UdpClient()

Inicializuje novou instanci UdpClient třídy .

UdpClient(Int32)

Inicializuje novou instanci UdpClient třídy a vytvoří vazbu na zadané číslo místního portu.

UdpClient(IPEndPoint)

Inicializuje novou instanci UdpClient třídy a vytvoří vazbu na zadaný místní koncový bod.

UdpClient(AddressFamily)

Inicializuje novou instanci UdpClient třídy .

UdpClient(Int32, AddressFamily)

Inicializuje novou instanci UdpClient třídy a vytvoří vazbu na zadané číslo místního portu.

UdpClient(String, Int32)

Inicializuje novou instanci UdpClient třídy a vytvoří výchozího vzdáleného hostitele.

UdpClient()

Zdroj:
UDPClient.cs
Zdroj:
UDPClient.cs
Zdroj:
UDPClient.cs

Inicializuje novou instanci UdpClient třídy .

public:
 UdpClient();
public UdpClient ();
Public Sub New ()

Výjimky

Při přístupu k soketu došlo k chybě.

Příklady

Následující příklad ukazuje, jak použít konstruktor bez parametrů k vytvoření instance UdpClient třídy .

//Creates an instance of the UdpClient class using the default constructor.
UdpClient^ udpClient = gcnew UdpClient;
//Creates an instance of the UdpClient class using the default constructor.
UdpClient udpClient = new UdpClient();
'Creates an instance of the UdpClient class using the default constructor.
Dim udpClient As New UdpClient()

Poznámky

Tento konstruktor vytvoří nový UdpClient a umožní podkladovému poskytovateli služeb přiřadit nejvhodnější místní adresu IPv4 a číslo portu. Pokud je použit tento konstruktor, UdpClient instance je nastavena s rodinou adres IPv4, kterou nelze změnit nebo přepsat voláním metody připojení s cílem IPv6.

Poznámka

Pokud se zobrazí SocketException, použijte SocketException.ErrorCode k získání konkrétního kódu chyby. Jakmile tento kód získáte, můžete se podívat do dokumentace k chybovému kódu rozhraní API rozhraní Windows Sockets verze 2 , kde najdete podrobný popis chyby.

Tento konstruktor není vhodný pro připojení skupiny vícesměrového vysílání, protože neprovádí vazbu soketu. Funguje také pouze s typy IPv4 adres.

Platí pro

UdpClient(Int32)

Zdroj:
UDPClient.cs
Zdroj:
UDPClient.cs
Zdroj:
UDPClient.cs

Inicializuje novou instanci UdpClient třídy a vytvoří vazbu na zadané číslo místního portu.

public:
 UdpClient(int port);
public UdpClient (int port);
new System.Net.Sockets.UdpClient : int -> System.Net.Sockets.UdpClient
Public Sub New (port As Integer)

Parametry

port
Int32

Číslo místního portu, ze kterého chcete komunikovat.

Výjimky

Parametr port je větší nebo MaxPort menší než MinPort.

Při přístupu k soketu došlo k chybě.

Příklady

Následující příklad ukazuje použití čísla místního portu k vytvoření instance UdpClient třídy .

//Creates an instance of the UdpClient class to listen on
// the default interface using a particular port.
try
{
   UdpClient^ udpClient = gcnew UdpClient( 11000 );
}
catch ( Exception^ e ) 
{
   Console::WriteLine( e->ToString() );
}
//Creates an instance of the UdpClient class to listen on
// the default interface using a particular port.
try{
         UdpClient udpClient = new UdpClient(11000);
}
catch (Exception e ) {
          Console.WriteLine(e.ToString());
  }
'Creates an instance of the UdpClient class to listen on 
'the default interface using a particular port.
Try
   Dim udpClient As New UdpClient(11000)
Catch e As Exception
   Console.WriteLine(e.ToString())
End Try

Poznámky

Tento konstruktor vytvoří podkladový Socket objekt a vytvoří vazbu k číslu portu, ze kterého chcete komunikovat. Tento konstruktor použijte, pokud vás zajímá pouze nastavení čísla místního portu. Poskytovatel základní služby přiřadí místní IP adresu. Pokud konstruktoru předáte hodnotu 0, poskytovatel základní služby přiřadí číslo portu. Pokud je použit tento konstruktor, UdpClient instance je nastavena s rodinou adres IPv4, kterou nelze změnit nebo přepsat voláním metody připojení s cílem IPv6.

Poznámka

Pokud se zobrazí SocketException, použijte SocketException.ErrorCode k získání konkrétního kódu chyby. Jakmile tento kód získáte, můžete se podívat do dokumentace k chybovému kódu rozhraní API rozhraní Windows Sockets verze 2 , kde najdete podrobný popis chyby.

Tento konstruktor funguje pouze s typy adres IPv4.

Platí pro

UdpClient(IPEndPoint)

Zdroj:
UDPClient.cs
Zdroj:
UDPClient.cs
Zdroj:
UDPClient.cs

Inicializuje novou instanci UdpClient třídy a vytvoří vazbu na zadaný místní koncový bod.

public:
 UdpClient(System::Net::IPEndPoint ^ localEP);
public UdpClient (System.Net.IPEndPoint localEP);
new System.Net.Sockets.UdpClient : System.Net.IPEndPoint -> System.Net.Sockets.UdpClient
Public Sub New (localEP As IPEndPoint)

Parametry

localEP
IPEndPoint

Představuje IPEndPoint místní koncový bod, ke kterému svážete připojení UDP.

Výjimky

localEP je null.

Při přístupu k soketu došlo k chybě.

Příklady

Následující příklad ukazuje, jak vytvořit instanci UdpClient třídy pomocí místního koncového bodu.

//Creates an instance of the UdpClient class using a local endpoint.
IPAddress^ ipAddress = Dns::Resolve( Dns::GetHostName() )->AddressList[ 0 ];
IPEndPoint^ ipLocalEndPoint = gcnew IPEndPoint( ipAddress,11000 );

try
{
   UdpClient^ udpClient = gcnew UdpClient( ipLocalEndPoint );
}
catch ( Exception^ e ) 
{
   Console::WriteLine( e->ToString() );
}

//Creates an instance of the UdpClient class using a local endpoint.
 IPAddress ipAddress = Dns.Resolve(Dns.GetHostName()).AddressList[0];
 IPEndPoint ipLocalEndPoint = new IPEndPoint(ipAddress, 11000);

try{
     UdpClient udpClient = new UdpClient(ipLocalEndPoint);
}
catch (Exception e ) {
           Console.WriteLine(e.ToString());
}
'Creates an instance of the UdpClient class using a local endpoint.
Dim ipAddress As IPAddress = Dns.Resolve(Dns.GetHostName()).AddressList(0)
Dim ipLocalEndPoint As New IPEndPoint(ipAddress, 11000)

Try
   Dim udpClient As New UdpClient(ipLocalEndPoint)
Catch e As Exception
   Console.WriteLine(e.ToString())
End Try

Poznámky

Tento konstruktor vytvoří nový UdpClient a vytvoří vazbu na IPEndPoint hodnotu určenou parametrem localEP . Před voláním tohoto konstruktoru musíte vytvořit IPEndPoint pomocí IP adresy a čísla portu, ze kterého chcete odesílat a přijímat data. Pro odesílání a příjem dat nemusíte zadávat místní IP adresu a číslo portu. Pokud to neuděláte, příslušný poskytovatel služeb přiřadí nejvhodnější místní IP adresu a číslo portu.

Pokud je použit tento konstruktor, UdpClient instance je nastavena s rodinou adres určenou parametrem localEP , kterou nelze změnit nebo přepsat voláním metody connect s jinou rodinou adres.

Poznámka

Pokud se zobrazí SocketException, použijte SocketException.ErrorCode k získání konkrétního kódu chyby. Jakmile tento kód získáte, můžete se podívat do dokumentace k chybovému kódu rozhraní API rozhraní Windows Sockets verze 2 , kde najdete podrobný popis chyby.

Viz také

Platí pro

UdpClient(AddressFamily)

Zdroj:
UDPClient.cs
Zdroj:
UDPClient.cs
Zdroj:
UDPClient.cs

Inicializuje novou instanci UdpClient třídy .

public:
 UdpClient(System::Net::Sockets::AddressFamily family);
public UdpClient (System.Net.Sockets.AddressFamily family);
new System.Net.Sockets.UdpClient : System.Net.Sockets.AddressFamily -> System.Net.Sockets.UdpClient
Public Sub New (family As AddressFamily)

Parametry

family
AddressFamily

Jedna z AddressFamily hodnot, která určuje schéma adresování soketu.

Výjimky

Při přístupu k soketu došlo k chybě.

Poznámky

Parametr family určuje, jestli naslouchací proces používá adresu IP verze 4 (IPv4) nebo IP adresu verze 6 (IPv6). Pokud chcete použít adresu IPv4, předejte hodnotu InterNetwork . Pokud chcete použít IPv6 adresu, předejte InterNetworkV6 hodnotu . Předání jakékoli jiné hodnoty způsobí, že metoda vyvolá ArgumentException.

Pokud je použit tento konstruktor, UdpClient instance je nastavena s rodinou adres určenou parametrem family , kterou nelze změnit nebo přepsat voláním metody connect s jinou rodinou adres.

Poznámka

Pokud se zobrazí SocketException, použijte SocketException.ErrorCode k získání konkrétního kódu chyby. Jakmile tento kód získáte, můžete se podívat do dokumentace k chybovému kódu rozhraní API rozhraní Windows Sockets verze 2 , kde najdete podrobný popis chyby.

Není UdpClient.UdpClient(AddressFamily) vhodný pro připojení skupiny vícesměrového vysílání, protože neprovádí vazbu soketu.

Platí pro

UdpClient(Int32, AddressFamily)

Zdroj:
UDPClient.cs
Zdroj:
UDPClient.cs
Zdroj:
UDPClient.cs

Inicializuje novou instanci UdpClient třídy a vytvoří vazbu na zadané číslo místního portu.

public:
 UdpClient(int port, System::Net::Sockets::AddressFamily family);
public UdpClient (int port, System.Net.Sockets.AddressFamily family);
new System.Net.Sockets.UdpClient : int * System.Net.Sockets.AddressFamily -> System.Net.Sockets.UdpClient
Public Sub New (port As Integer, family As AddressFamily)

Parametry

port
Int32

Port, na kterém chcete naslouchat příchozím pokusům o připojení.

family
AddressFamily

Jedna z AddressFamily hodnot, která určuje schéma adresování soketu.

Výjimky

port je větší než MaxPort nebo menší než MinPort.

Při přístupu k soketu došlo k chybě.

Příklady

Následující příklad kódu ukazuje, jak vytvořit klienta UDP pro použití ve skupině vícesměrového vysílání.

// Bind and listen on port 2000. This constructor creates a socket
// and binds it to the port on which to receive data. The family
// parameter specifies that this connection uses an IPv6 address.
clientOriginator = gcnew UdpClient( 2000,AddressFamily::InterNetworkV6 );

// Join or create a multicast group. The multicast address ranges
// to use are specified in RFC#2375. You are free to use
// different addresses.
// Transform the String* address into the internal format.
m_GrpAddr = IPAddress::Parse( "FF01::1" );

// Display the multicast address used.
Console::WriteLine( "Multicast Address: [ {0}]", m_GrpAddr );

// Exercise the use of the IPv6MulticastOption.
Console::WriteLine( "Instantiate IPv6MulticastOption(IPAddress)" );

// Instantiate IPv6MulticastOption using one of the
// overloaded constructors.
IPv6MulticastOption^ ipv6MulticastOption = gcnew IPv6MulticastOption( m_GrpAddr );

// Store the IPAdress multicast options.
IPAddress^ group = ipv6MulticastOption->Group;
__int64 interfaceIndex = ipv6MulticastOption->InterfaceIndex;

// Display IPv6MulticastOption properties.
Console::WriteLine( "IPv6MulticastOption::Group: [ {0}]", group );
Console::WriteLine( "IPv6MulticastOption::InterfaceIndex: [ {0}]", interfaceIndex );

// Instantiate IPv6MulticastOption using another
// overloaded constructor.
IPv6MulticastOption^ ipv6MulticastOption2 = gcnew IPv6MulticastOption( group,interfaceIndex );

// Store the IPAdress multicast options.
group = ipv6MulticastOption2->Group;
interfaceIndex = ipv6MulticastOption2->InterfaceIndex;

// Display the IPv6MulticastOption2 properties.
Console::WriteLine( "IPv6MulticastOption::Group: [ {0} ]", group );
Console::WriteLine( "IPv6MulticastOption::InterfaceIndex: [ {0} ]", interfaceIndex );

// Join the specified multicast group using one of the
// JoinMulticastGroup overloaded methods.
clientOriginator->JoinMulticastGroup( (int)interfaceIndex, group );

// Define the endpoint data port. Note that this port number
// must match the ClientTarget UDP port number which is the
// port on which the ClientTarget is receiving data.
m_ClientTargetdest = gcnew IPEndPoint( m_GrpAddr,1000 );

// Bind and listen on port 2000. This constructor creates a socket
// and binds it to the port on which to receive data. The family
// parameter specifies that this connection uses an IPv6 address.
clientOriginator = new UdpClient(2000, AddressFamily.InterNetworkV6);

// Join or create a multicast group. The multicast address ranges
// to use are specified in RFC#2375. You are free to use
// different addresses.

// Transform the string address into the internal format.
m_GrpAddr = IPAddress.Parse("FF01::1");

// Display the multicast address used.
Console.WriteLine("Multicast Address: [" + m_GrpAddr.ToString() + "]");

// Exercise the use of the IPv6MulticastOption.
Console.WriteLine("Instantiate IPv6MulticastOption(IPAddress)");

// Instantiate IPv6MulticastOption using one of the
// overloaded constructors.
IPv6MulticastOption ipv6MulticastOption = new IPv6MulticastOption(m_GrpAddr);

// Store the IPAdress multicast options.
IPAddress group =  ipv6MulticastOption.Group;
long interfaceIndex = ipv6MulticastOption.InterfaceIndex;

// Display IPv6MulticastOption properties.
Console.WriteLine("IPv6MulticastOption.Group: [" + group  + "]");
Console.WriteLine("IPv6MulticastOption.InterfaceIndex: [" + interfaceIndex + "]");



// Instantiate IPv6MulticastOption using another
// overloaded constructor.
IPv6MulticastOption ipv6MulticastOption2 = new IPv6MulticastOption(group, interfaceIndex);

// Store the IPAdress multicast options.
group =  ipv6MulticastOption2.Group;
interfaceIndex = ipv6MulticastOption2.InterfaceIndex;

// Display the IPv6MulticastOption2 properties.
Console.WriteLine("IPv6MulticastOption.Group: [" + group  + "]");
Console.WriteLine("IPv6MulticastOption.InterfaceIndex: [" + interfaceIndex + "]");

// Join the specified multicast group using one of the
// JoinMulticastGroup overloaded methods.
clientOriginator.JoinMulticastGroup((int)interfaceIndex, group);


// Define the endpoint data port. Note that this port number
// must match the ClientTarget UDP port number which is the
// port on which the ClientTarget is receiving data.
m_ClientTargetdest = new IPEndPoint(m_GrpAddr, 1000);
' Bind and listen on port 2000. This constructor creates a socket 
' and binds it to the port on which to receive data. The family 
' parameter specifies that this connection uses an IPv6 address.
clientOriginator = New UdpClient(2000, AddressFamily.InterNetworkV6)

' Join or create a multicast group. The multicast address ranges 
' to use are specified in RFC#2375. You are free to use 
' different addresses.
' Transform the string address into the internal format.
m_GrpAddr = IPAddress.Parse("FF01::1")

' Display the multicast address used.
Console.WriteLine(("Multicast Address: [" + m_GrpAddr.ToString() + "]"))

' Exercise the use of the IPv6MulticastOption.
Console.WriteLine("Instantiate IPv6MulticastOption(IPAddress)")

' Instantiate IPv6MulticastOption using one of the 
' overloaded constructors.
Dim ipv6MulticastOption As New IPv6MulticastOption(m_GrpAddr)

' Store the IPAdress multicast options.
Dim group As IPAddress = ipv6MulticastOption.Group
Dim interfaceIndex As Long = ipv6MulticastOption.InterfaceIndex

' Display IPv6MulticastOption properties.
Console.WriteLine(("IPv6MulticastOption.Group: [" + group.ToString() + "]"))
Console.WriteLine(("IPv6MulticastOption.InterfaceIndex: [" + interfaceIndex.ToString() + "]"))

' Instantiate IPv6MulticastOption using another 
' overloaded constructor.
Dim ipv6MulticastOption2 As New IPv6MulticastOption(group, interfaceIndex)

' Store the IPAdress multicast options.
group = ipv6MulticastOption2.Group
interfaceIndex = ipv6MulticastOption2.InterfaceIndex

' Display the IPv6MulticastOption2 properties.
Console.WriteLine(("IPv6MulticastOption.Group: [" + group.ToString() + "]"))
Console.WriteLine(("IPv6MulticastOption.InterfaceIndex: [" + interfaceIndex.ToString() + "]"))

' Join the specified multicast group using one of the 
' JoinMulticastGroup overloaded methods.
clientOriginator.JoinMulticastGroup(Fix(interfaceIndex), group)

' Define the endpoint data port. Note that this port number
' must match the ClientTarget UDP port number which is the
' port on which the ClientTarget is receiving data.
m_ClientTargetdest = New IPEndPoint(m_GrpAddr, 1000)

Poznámky

Tento konstruktor vytvoří podkladový Socket objekt a vytvoří vazbu k číslu portu, ze kterého chcete komunikovat.

Parametr family určuje, jestli naslouchací proces používá adresu IP verze 4 (IPv4) nebo IP adresu verze 6 (IPv6). Pokud chcete použít adresu IPv4, předejte hodnotu InterNetwork . Pokud chcete použít IPv6 adresu, předejte InterNetworkV6 hodnotu . Předání jakékoli jiné hodnoty způsobí, že metoda vyvolá ArgumentException.

Pokud je použit tento konstruktor, UdpClient instance je nastavena s rodinou adres určenou parametrem family , kterou nelze změnit nebo přepsat voláním metody connect s jinou rodinou adres.

Poznámka

Pokud se zobrazí SocketException, použijte SocketException.ErrorCode k získání konkrétního kódu chyby. Jakmile tento kód získáte, projděte si podrobný popis chyby v dokumentaci ke kódu chyb rozhraní API rozhraní Windows Sockets verze 2 .

Platí pro

UdpClient(String, Int32)

Zdroj:
UDPClient.cs
Zdroj:
UDPClient.cs
Zdroj:
UDPClient.cs

Inicializuje novou instanci UdpClient třídy a vytvoří výchozího vzdáleného hostitele.

public:
 UdpClient(System::String ^ hostname, int port);
public UdpClient (string hostname, int port);
new System.Net.Sockets.UdpClient : string * int -> System.Net.Sockets.UdpClient
Public Sub New (hostname As String, port As Integer)

Parametry

hostname
String

Název vzdáleného hostitele DNS, ke kterému se chcete připojit.

port
Int32

Číslo vzdáleného portu, ke kterému se chcete připojit.

Výjimky

hostname je null.

Při přístupu k soketu došlo k chybě.

Příklady

Následující příklad ukazuje, jak vytvořit instanci UdpClient třídy pomocí názvu hostitele a čísla portu.

//Creates an instance of the UdpClient class with a remote host name and a port number.
try
{
   UdpClient^ udpClient = gcnew UdpClient( "www.contoso.com",11000 );
}
catch ( Exception^ e ) 
{
   Console::WriteLine( e->ToString() );
}

//Creates an instance of the UdpClient class with a remote host name and a port number.
try{
     UdpClient udpClient = new UdpClient("www.contoso.com",11000);
}
catch (Exception e ) {
           Console.WriteLine(e.ToString());
}
'Creates an instance of the UdpClient class with a remote host name and a port number.
Try
   Dim udpClient As New UdpClient("www.contoso.com", 11000)
Catch e As Exception
   Console.WriteLine(e.ToString())
End Try

Poznámky

Tento konstruktor inicializuje nový UdpClient a vytvoří vzdáleného hostitele pomocí hostname parametrů a port . Vytvoření výchozího vzdáleného hostitele je volitelné. Pokud použijete tento konstruktor, nemusíte v každém volání metody zadávat vzdáleného Send hostitele. Určení výchozího vzdáleného hostitele vás omezuje pouze na daného hostitele. Výchozího vzdáleného hostitele můžete kdykoli změnit voláním Connect metody . Pokud chcete ve volání Send metody zadat vzdáleného hostitele, nepoužívejte tento konstruktor.

Poznámka

Pokud se zobrazí SocketException, použijte SocketException.ErrorCode k získání konkrétního kódu chyby. Jakmile tento kód získáte, můžete se podívat do dokumentace k chybovému kódu rozhraní API rozhraní Windows Sockets verze 2 , kde najdete podrobný popis chyby.

Viz také

Platí pro