Udostępnij za pośrednictwem


UdpClient.Send Metoda

Definicja

Wysyła datagram UDP do hosta zdalnego.

Przeciążenia

Nazwa Opis
Send(Byte[], Int32, String, Int32)

Wysyła datagram UDP do określonego portu na określonym hoście zdalnym.

Send(ReadOnlySpan<Byte>, String, Int32)

Wysyła datagram UDP do określonego portu na określonym hoście zdalnym.

Send(Byte[], Int32, IPEndPoint)

Wysyła datagram UDP do hosta w określonym zdalnym punkcie końcowym.

Send(Byte[], Int32)

Wysyła datagram UDP do hosta zdalnego.

Send(ReadOnlySpan<Byte>)

Wysyła datagram UDP do hosta zdalnego.

Send(ReadOnlySpan<Byte>, IPEndPoint)

Wysyła datagram UDP do hosta w określonym zdalnym punkcie końcowym.

Send(Byte[], Int32, String, Int32)

Źródło:
UDPClient.cs
Źródło:
UDPClient.cs
Źródło:
UDPClient.cs
Źródło:
UDPClient.cs
Źródło:
UDPClient.cs

Wysyła datagram UDP do określonego portu na określonym hoście zdalnym.

public:
 int Send(cli::array <System::Byte> ^ dgram, int bytes, System::String ^ hostname, int port);
public int Send(byte[] dgram, int bytes, string? hostname, int port);
public int Send(byte[] dgram, int bytes, string hostname, int port);
member this.Send : byte[] * int * string * int -> int
Public Function Send (dgram As Byte(), bytes As Integer, hostname As String, port As Integer) As Integer

Parametry

dgram
Byte[]

Tablica typu Byte określająca datagram UDP, który ma być wysyłany jako tablica bajtów.

bytes
Int32

Liczba bajtów w datagramie.

hostname
String

Nazwa hosta zdalnego, do którego zamierzasz wysłać datagram.

port
Int32

Numer portu zdalnego, z którym zamierzasz się komunikować.

Zwraca

Liczba wysłanych bajtów.

Wyjątki

Parametr dgram ma wartość null.

Host UdpClient został już ustanowiony domyślny host zdalny.

Element UdpClient jest zamknięty.

Wystąpił błąd podczas uzyskiwania dostępu do gniazda.

Przykłady

W poniższym przykładzie przedstawiono metodę Send . W tym przykładzie użyto nazwy hosta i numeru portu w celu zidentyfikowania hosta docelowego.

UdpClient udpClient = new UdpClient();

Byte[] sendBytes = Encoding.ASCII.GetBytes("Is anybody there");
try{
    udpClient.Send(sendBytes, sendBytes.Length, "www.contoso.com", 11000);
}
catch ( Exception e ){
    Console.WriteLine(e.ToString());	
}
Dim udpClient As New UdpClient()

Dim sendBytes As [Byte]() = Encoding.ASCII.GetBytes("Is anybody there")
Try
   udpClient.Send(sendBytes, sendBytes.Length, "www.contoso.com", 11000)
Catch e As Exception
   Console.WriteLine(e.ToString())
End Try

Uwagi

Metoda Send wysyła datagramy do wartości określonych przez hostname parametry i port i i zwraca liczbę bajtów pomyślnie wysłanych. Datagramy można wysyłać do domyślnego adresu emisji, określając wartość parametru hostname "255.255.255.255".

Jeśli chcesz wysłać datagramy do dowolnego innego adresu emisji, użyj Client metody , aby uzyskać bazowe Socket, i ustaw opcję gniazda na SocketOptionName.Broadcast. Możesz również przywrócić klasę Socket .

Uwaga / Notatka

Nie należy podawać nazwy hosta ani numeru portu tej metody, jeśli host zdalny został już ustanowiony za Connect pomocą metody . Jeśli to zrobisz, Send metoda zwróci SocketExceptionwartość . Jeśli zostanie wyświetlony kod błędu SocketException, użyj polecenia SocketException.ErrorCode , aby uzyskać określony kod błędu. Po uzyskaniu tego kodu możesz zapoznać się z dokumentacją kodu błędu interfejsu API windows Sockets w wersji 2 , aby uzyskać szczegółowy opis błędu.

Zobacz też

Dotyczy

Send(ReadOnlySpan<Byte>, String, Int32)

Źródło:
UDPClient.cs
Źródło:
UDPClient.cs
Źródło:
UDPClient.cs
Źródło:
UDPClient.cs
Źródło:
UDPClient.cs

Wysyła datagram UDP do określonego portu na określonym hoście zdalnym.

public:
 int Send(ReadOnlySpan<System::Byte> datagram, System::String ^ hostname, int port);
public int Send(ReadOnlySpan<byte> datagram, string? hostname, int port);
member this.Send : ReadOnlySpan<byte> * string * int -> int
Public Function Send (datagram As ReadOnlySpan(Of Byte), hostname As String, port As Integer) As Integer

Parametry

datagram
ReadOnlySpan<Byte>

Byte Typ ReadOnlySpan<T> określający datagram UDP, który ma być wysyłany.

hostname
String

Nazwa hosta zdalnego, do którego zamierzasz wysłać datagram.

port
Int32

Numer portu zdalnego, z którym zamierzasz się komunikować.

Zwraca

Liczba wysłanych bajtów.

Wyjątki

Host UdpClient został już ustanowiony domyślny host zdalny.

Element UdpClient jest zamknięty.

Wystąpił błąd podczas uzyskiwania dostępu do gniazda.

Dotyczy

Send(Byte[], Int32, IPEndPoint)

Źródło:
UDPClient.cs
Źródło:
UDPClient.cs
Źródło:
UDPClient.cs
Źródło:
UDPClient.cs
Źródło:
UDPClient.cs

Wysyła datagram UDP do hosta w określonym zdalnym punkcie końcowym.

public:
 int Send(cli::array <System::Byte> ^ dgram, int bytes, System::Net::IPEndPoint ^ endPoint);
public int Send(byte[] dgram, int bytes, System.Net.IPEndPoint? endPoint);
public int Send(byte[] dgram, int bytes, System.Net.IPEndPoint endPoint);
member this.Send : byte[] * int * System.Net.IPEndPoint -> int
Public Function Send (dgram As Byte(), bytes As Integer, endPoint As IPEndPoint) As Integer

Parametry

dgram
Byte[]

Tablica typu Byte określająca datagram UDP, który ma być wysyłany, reprezentowany jako tablica bajtów.

bytes
Int32

Liczba bajtów w datagramie.

endPoint
IPEndPoint

Obiekt IPEndPoint reprezentujący hosta i port, do którego ma być wysyłany datagram.

Zwraca

Liczba wysłanych bajtów.

Wyjątki

Parametr dgram ma wartość null.

UdpClient program ustanowił już domyślny host zdalny.

Wystąpił błąd podczas uzyskiwania dostępu do gniazda.

Przykłady

W poniższym przykładzie przedstawiono metodę Send . W tym przykładzie użyto elementu , IPEndPoint aby określić hosta docelowego.

UdpClient udpClient = new UdpClient();
IPAddress ipAddress = Dns.Resolve("www.contoso.com").AddressList[0];
IPEndPoint ipEndPoint = new IPEndPoint(ipAddress, 11004);	

Byte[] sendBytes = Encoding.ASCII.GetBytes("Is anybody there?");
try{
    udpClient.Send(sendBytes, sendBytes.Length, ipEndPoint);
}
catch ( Exception e ){
    Console.WriteLine(e.ToString());	
}
Dim udpClient As New UdpClient()
Dim ipAddress As IPAddress = Dns.Resolve("www.contoso.com").AddressList(0)
Dim ipEndPoint As New IPEndPoint(ipAddress, 11004)

Dim sendBytes As [Byte]() = Encoding.ASCII.GetBytes("Is anybody there?")
Try
   udpClient.Send(sendBytes, sendBytes.Length, ipEndPoint)
Catch e As Exception
   Console.WriteLine(e.ToString())
End Try

Uwagi

Metoda Send wysyła datagramy do określonego punktu końcowego i zwraca liczbę bajtów pomyślnie wysłanych. Przed wywołaniem tego przeciążenia należy najpierw utworzyć IPEndPoint przy użyciu adresu IP i numeru portu hosta zdalnego, do którego zostaną dostarczone datagramy. Datagramy można wysyłać do domyślnego adresu emisji 255.255.255.255, określając SocketOptionName.Broadcast właściwość AddressIPEndPoint. Po utworzeniu Send tego IPEndPointelementu przekaż go do metody jako parametru endPoint .

Jeśli chcesz wysłać datagramy do dowolnego innego adresu emisji, użyj Client metody , aby uzyskać bazowe Socket, i ustaw opcję gniazda na SocketOptionName.Broadcast. Możesz również przywrócić klasę Socket .

Uwaga / Notatka

Nie należy podawać parametru endPoint tej metody, jeśli host zdalny został już ustanowiony za pomocą Connect metody . Jeśli to zrobisz, Send metoda zwróci SocketExceptionwartość . Jeśli zostanie wyświetlony kod błędu SocketException, użyj polecenia SocketException.ErrorCode , aby uzyskać określony kod błędu. Po uzyskaniu tego kodu możesz zapoznać się z dokumentacją kodu błędu interfejsu API windows Sockets w wersji 2 , aby uzyskać szczegółowy opis błędu.

Zobacz też

Dotyczy

Send(Byte[], Int32)

Źródło:
UDPClient.cs
Źródło:
UDPClient.cs
Źródło:
UDPClient.cs
Źródło:
UDPClient.cs
Źródło:
UDPClient.cs

Wysyła datagram UDP do hosta zdalnego.

public:
 int Send(cli::array <System::Byte> ^ dgram, int bytes);
public int Send(byte[] dgram, int bytes);
member this.Send : byte[] * int -> int
Public Function Send (dgram As Byte(), bytes As Integer) As Integer

Parametry

dgram
Byte[]

Tablica typu Byte określająca datagram UDP, który ma być wysyłany jako tablica bajtów.

bytes
Int32

Liczba bajtów w datagramie.

Zwraca

Liczba wysłanych bajtów.

Wyjątki

Parametr dgram ma wartość null.

Host UdpClient został już ustanowiony domyślny host zdalny.

Element UdpClient jest zamknięty.

Wystąpił błąd podczas uzyskiwania dostępu do gniazda.

Przykłady

W poniższym przykładzie przedstawiono metodę Send . Przed użyciem tego przeciążenia należy ustanowić domyślny host zdalny.

UdpClient udpClient = new UdpClient("www.contoso.com", 11000);
Byte[] sendBytes = Encoding.ASCII.GetBytes("Is anybody there");
try{
    udpClient.Send(sendBytes, sendBytes.Length);
}
catch ( Exception e ){
    Console.WriteLine( e.ToString());
}
Dim udpClient As New UdpClient("www.contoso.com", 11000)
Dim sendBytes As [Byte]() = Encoding.ASCII.GetBytes("Is anybody there")
Try
   udpClient.Send(sendBytes, sendBytes.Length)
Catch e As Exception
   Console.WriteLine(e.ToString())
End Try

Uwagi

To przeciążenie wysyła datagramy do hosta zdalnego ustanowionego w metodzie Connect i zwraca liczbę wysłanych bajtów. Jeśli nie wywołasz Connect wywołania tego przeciążenia przed wywołaniem tego przeciążenia, Send metoda zgłosi wyjątek SocketException. Jeśli zostanie wyświetlony kod błędu SocketException, użyj polecenia SocketException.ErrorCode , aby uzyskać określony kod błędu. Po uzyskaniu tego kodu możesz zapoznać się z dokumentacją kodu błędu interfejsu API windows Sockets w wersji 2 , aby uzyskać szczegółowy opis błędu.

Jeśli chcesz wysłać datagramy do innego hosta zdalnego, musisz wywołać metodę Connect i określić żądany host zdalny. Użyj jednego z innych Send przeciążeń metody, aby wysyłać datagramy do adresu emisji.

Zobacz też

Dotyczy

Send(ReadOnlySpan<Byte>)

Źródło:
UDPClient.cs
Źródło:
UDPClient.cs
Źródło:
UDPClient.cs
Źródło:
UDPClient.cs
Źródło:
UDPClient.cs

Wysyła datagram UDP do hosta zdalnego.

public:
 int Send(ReadOnlySpan<System::Byte> datagram);
public int Send(ReadOnlySpan<byte> datagram);
member this.Send : ReadOnlySpan<byte> -> int
Public Function Send (datagram As ReadOnlySpan(Of Byte)) As Integer

Parametry

datagram
ReadOnlySpan<Byte>

Byte Typ ReadOnlySpan<T> określający datagram UDP, który ma być wysyłany.

Zwraca

Liczba wysłanych bajtów.

Wyjątki

Nie UdpClient określono domyślnego hosta zdalnego.

Element UdpClient jest zamknięty.

Wystąpił błąd podczas uzyskiwania dostępu do gniazda.

Dotyczy

Send(ReadOnlySpan<Byte>, IPEndPoint)

Źródło:
UDPClient.cs
Źródło:
UDPClient.cs
Źródło:
UDPClient.cs
Źródło:
UDPClient.cs
Źródło:
UDPClient.cs

Wysyła datagram UDP do hosta w określonym zdalnym punkcie końcowym.

public:
 int Send(ReadOnlySpan<System::Byte> datagram, System::Net::IPEndPoint ^ endPoint);
public int Send(ReadOnlySpan<byte> datagram, System.Net.IPEndPoint? endPoint);
member this.Send : ReadOnlySpan<byte> * System.Net.IPEndPoint -> int
Public Function Send (datagram As ReadOnlySpan(Of Byte), endPoint As IPEndPoint) As Integer

Parametry

datagram
ReadOnlySpan<Byte>

Byte Typ ReadOnlySpan<T> określający datagram UDP, który ma być wysyłany.

endPoint
IPEndPoint

Obiekt IPEndPoint reprezentujący hosta i port, do którego ma być wysyłany datagram.

Zwraca

Liczba wysłanych bajtów.

Wyjątki

UdpClient ma już ustanowiony domyślny host zdalny i endPoint nie nulljest .

Wystąpił błąd podczas uzyskiwania dostępu do gniazda.

Dotyczy