Freigeben über


UdpClient.Send Methode

Definition

Sendet ein UDP-Datagramm an einen Remotehost.

Überlädt

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

Sendet ein UDP-Datagramm an einen angegebenen Port auf einem angegebenen Remotehost.

Send(ReadOnlySpan<Byte>, String, Int32)

Sendet ein UDP-Datagramm an einen angegebenen Port auf einem angegebenen Remotehost.

Send(Byte[], Int32, IPEndPoint)

Sendet ein UDP-Datagramm an den Host am angegebenen Remoteendpunkt.

Send(Byte[], Int32)

Sendet ein UDP-Datagramm an einen Remotehost.

Send(ReadOnlySpan<Byte>)

Sendet ein UDP-Datagramm an einen Remotehost.

Send(ReadOnlySpan<Byte>, IPEndPoint)

Sendet ein UDP-Datagramm an den Host am angegebenen Remoteendpunkt.

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

Quelle:
UDPClient.cs
Quelle:
UDPClient.cs
Quelle:
UDPClient.cs

Sendet ein UDP-Datagramm an einen angegebenen Port auf einem angegebenen Remotehost.

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

Parameter

dgram
Byte[]

Ein Array vom Typ Byte, das das von Ihnen zu sendende UDP-Datagramm in Form eines Bytearrays angibt.

bytes
Int32

Die Anzahl der Bytes im Datagramm.

hostname
String

Der Name des Remotehosts, an den das Datagramm gesendet werden soll.

port
Int32

Die Nummer des Remoteports, mit dem kommuniziert werden soll.

Gibt zurück

Die Anzahl der gesendeten Bytes.

Ausnahmen

dgram ist null.

Der UdpClient hat bereits einen Standard-Remotehost eingerichtet.

Der UdpClient ist geschlossen.

Beim Zugreifen auf den Socket ist ein Fehler aufgetreten.

Beispiele

Das folgende Beispiel veranschaulicht die Send Methode. In diesem Beispiel werden ein Hostname und eine Portnummer verwendet, um den Zielhost zu identifizieren.

UdpClient^ udpClient = gcnew UdpClient;

array<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() );
}
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

Hinweise

Die Send Methode sendet Datagramme an die Werte, die durch die hostname Parameter und port angegeben sind, und gibt die Anzahl der erfolgreich gesendeten Bytes zurück. Sie können Datagramme an die Standard-Broadcastadresse senden, indem Sie "255.255.255.255.255" für den hostname Parameterwert angeben.

Wenn Sie Datagramme an eine andere Broadcastadresse senden möchten, verwenden Sie die Client -Methode, um das zugrunde liegende Socketabzurufen, und legen Sie die Socketoption auf fest SocketOptionName.Broadcast. Sie können auch die -Klasse rückgängig machenSocket.

Hinweis

Geben Sie für diese Methode keinen Hostnamen oder Port an, wenn Sie bereits einen Remotehost mit der Connect -Methode eingerichtet haben. Wenn Sie dies tun, löst die Send -Methode ein aus SocketException. Wenn Sie einen SocketExceptionerhalten, verwenden Sie SocketException.ErrorCode , um den spezifischen Fehlercode abzurufen. Nachdem Sie diesen Code erhalten haben, finden Sie eine ausführliche Beschreibung des Fehlers in der Dokumentation zur Windows Sockets-API, Version 2 .

Weitere Informationen

Gilt für:

Send(ReadOnlySpan<Byte>, String, Int32)

Quelle:
UDPClient.cs
Quelle:
UDPClient.cs
Quelle:
UDPClient.cs

Sendet ein UDP-Datagramm an einen angegebenen Port auf einem angegebenen Remotehost.

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

Parameter

datagram
ReadOnlySpan<Byte>

Ein ReadOnlySpan<T> vom Typ Byte , der das UDP-Datagramm angibt, das Sie senden möchten.

hostname
String

Der Name des Remotehosts, an den das Datagramm gesendet werden soll.

port
Int32

Die Nummer des Remoteports, mit dem kommuniziert werden soll.

Gibt zurück

Die Anzahl der gesendeten Bytes.

Ausnahmen

Der UdpClient hat bereits einen Standard-Remotehost eingerichtet.

Der UdpClient ist geschlossen.

Beim Zugreifen auf den Socket ist ein Fehler aufgetreten.

Gilt für:

Send(Byte[], Int32, IPEndPoint)

Quelle:
UDPClient.cs
Quelle:
UDPClient.cs
Quelle:
UDPClient.cs

Sendet ein UDP-Datagramm an den Host am angegebenen Remoteendpunkt.

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

Parameter

dgram
Byte[]

Ein Array vom Typ Byte, das das von Ihnen zu sendende UDP-Datagramm in Form eines Bytearrays angibt.

bytes
Int32

Die Anzahl der Bytes im Datagramm.

endPoint
IPEndPoint

Ein IPEndPoint, der den Host und Port darstellt, an die das Datagramm gesendet werden soll.

Gibt zurück

Die Anzahl der gesendeten Bytes.

Ausnahmen

dgram ist null.

Der UdpClient hat bereits einen Standard-Remotehost eingerichtet.

Der UdpClient ist geschlossen.

Beim Zugreifen auf den Socket ist ein Fehler aufgetreten.

Beispiele

Das folgende Beispiel veranschaulicht die Send Methode. In diesem Beispiel wird ein IPEndPoint verwendet, um den Zielhost anzugeben.

UdpClient^ udpClient = gcnew UdpClient;
IPAddress^ ipAddress = Dns::Resolve( "www.contoso.com" )->AddressList[ 0 ];
IPEndPoint^ ipEndPoint = gcnew IPEndPoint( ipAddress,11004 );

array<Byte>^ sendBytes = Encoding::ASCII->GetBytes( "Is anybody there?" );
try
{
   udpClient->Send( sendBytes, sendBytes->Length, ipEndPoint );
}
catch ( Exception^ e ) 
{
   Console::WriteLine( e->ToString() );
}
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

Hinweise

Die Send Methode sendet Datagramme an den angegebenen Endpunkt und gibt die Anzahl der erfolgreich gesendeten Bytes zurück. Bevor Sie diese Überladung aufrufen, müssen Sie zunächst ein IPEndPoint erstellen, indem Sie die IP-Adresse und Portnummer des Remotehosts verwenden, an den Ihre Datagramme übermittelt werden. Sie können Datagramme an die Standard-Broadcastadresse 255.255.255.255 senden, indem Sie für die Address -Eigenschaft von IPEndPointangebenSocketOptionName.Broadcast. Nachdem Sie diesen IPEndPointerstellt haben, übergeben Sie es als Parameter an die endPointSend -Methode.

Wenn Sie Datagramme an eine andere Broadcastadresse senden möchten, verwenden Sie die Client -Methode, um das zugrunde liegende Socketabzurufen, und legen Sie die Socketoption auf fest SocketOptionName.Broadcast. Sie können auch die -Klasse rückgängig machenSocket.

Hinweis

Geben Sie für diese Methode keinen Parameter an endPoint , wenn Sie bereits einen Remotehost mit der Connect -Methode eingerichtet haben. Wenn Sie dies tun, löst die Send -Methode ein aus SocketException. Wenn Sie einen SocketExceptionerhalten, verwenden Sie SocketException.ErrorCode , um den spezifischen Fehlercode abzurufen. Nachdem Sie diesen Code erhalten haben, finden Sie eine ausführliche Beschreibung des Fehlers in der Dokumentation zur Windows Sockets-API, Version 2 .

Weitere Informationen

Gilt für:

Send(Byte[], Int32)

Quelle:
UDPClient.cs
Quelle:
UDPClient.cs
Quelle:
UDPClient.cs

Sendet ein UDP-Datagramm an einen Remotehost.

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

Parameter

dgram
Byte[]

Ein Array vom Typ Byte, das das von Ihnen zu sendende UDP-Datagramm in Form eines Bytearrays angibt.

bytes
Int32

Die Anzahl der Bytes im Datagramm.

Gibt zurück

Die Anzahl der gesendeten Bytes.

Ausnahmen

dgram ist null.

Der UdpClient hat bereits einen Standard-Remotehost eingerichtet.

Der UdpClient ist geschlossen.

Beim Zugreifen auf den Socket ist ein Fehler aufgetreten.

Beispiele

Das folgende Beispiel veranschaulicht die Send Methode. Sie müssen einen Standard-Remotehost einrichten, bevor Sie diese Überladung verwenden.

UdpClient^ udpClient = gcnew UdpClient( "www.contoso.com",11000 );
array<Byte>^ sendBytes = Encoding::ASCII->GetBytes( "Is anybody there" );
try
{
   udpClient->Send( sendBytes, sendBytes->Length );
}
catch ( Exception^ e ) 
{
   Console::WriteLine( e->ToString() );
}
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

Hinweise

Diese Überladung sendet Datagramme an den In der Connect -Methode eingerichteten Remotehost und gibt die Anzahl der gesendeten Bytes zurück. Wenn Sie vor dem Aufrufen dieser Überladung nicht aufrufen Connect , löst die Send -Methode einen aus SocketException. Wenn Sie einen SocketExceptionerhalten, verwenden Sie SocketException.ErrorCode , um den spezifischen Fehlercode abzurufen. Nachdem Sie diesen Code erhalten haben, finden Sie eine ausführliche Beschreibung des Fehlers in der Dokumentation zur Windows Sockets-API, Version 2 .

Wenn Sie Datagramme an einen anderen Remotehost senden möchten, müssen Sie die Connect -Methode aufrufen und den gewünschten Remotehost angeben. Verwenden Sie eine der anderen Send Methodenüberladungen, um Datagramme an eine Broadcastadresse zu senden.

Weitere Informationen

Gilt für:

Send(ReadOnlySpan<Byte>)

Quelle:
UDPClient.cs
Quelle:
UDPClient.cs
Quelle:
UDPClient.cs

Sendet ein UDP-Datagramm an einen Remotehost.

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

Parameter

datagram
ReadOnlySpan<Byte>

Ein ReadOnlySpan<T> vom Typ Byte , der das UDP-Datagramm angibt, das Sie senden möchten.

Gibt zurück

Die Anzahl der gesendeten Bytes.

Ausnahmen

Der UdpClient hat keinen Standard-Remotehost eingerichtet.

Der UdpClient ist geschlossen.

Beim Zugreifen auf den Socket ist ein Fehler aufgetreten.

Gilt für:

Send(ReadOnlySpan<Byte>, IPEndPoint)

Quelle:
UDPClient.cs
Quelle:
UDPClient.cs
Quelle:
UDPClient.cs

Sendet ein UDP-Datagramm an den Host am angegebenen Remoteendpunkt.

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

Parameter

datagram
ReadOnlySpan<Byte>

Ein ReadOnlySpan<T> vom Typ Byte , der das UDP-Datagramm angibt, das Sie senden möchten.

endPoint
IPEndPoint

Ein IPEndPoint, der den Host und Port darstellt, an die das Datagramm gesendet werden soll.

Gibt zurück

Die Anzahl der gesendeten Bytes.

Ausnahmen

UdpClient hat bereits einen Standard-Remotehost eingerichtet und endPoint ist nicht null.

Der UdpClient ist geschlossen.

Beim Zugreifen auf den Socket ist ein Fehler aufgetreten.

Gilt für: