UdpClient.Send Méthode

Définition

Envoie un datagramme UDP à un hôte distant.

Surcharges

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

Envoie un datagramme UDP à un port indiqué sur un hôte distant spécifié.

Send(ReadOnlySpan<Byte>, String, Int32)

Envoie un datagramme UDP à un port indiqué sur un hôte distant spécifié.

Send(Byte[], Int32, IPEndPoint)

Envoie un datagramme UDP à l’hôte au point de terminaison distant spécifié.

Send(Byte[], Int32)

Envoie un datagramme UDP à un hôte distant.

Send(ReadOnlySpan<Byte>)

Envoie un datagramme UDP à un hôte distant.

Send(ReadOnlySpan<Byte>, IPEndPoint)

Envoie un datagramme UDP à l’hôte au point de terminaison distant spécifié.

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

Envoie un datagramme UDP à un port indiqué sur un hôte distant spécifié.

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

Paramètres

dgram
Byte[]

Tableau de type Byte qui spécifie le datagramme UDP à envoyer, représenté sous la forme d’un tableau d’octets.

bytes
Int32

Nombre d’octets dans le datagramme.

hostname
String

Nom de l’hôte distant auquel vous voulez envoyer le datagramme.

port
Int32

Numéro de port distant avec lequel vous souhaitez communiquer.

Retours

Int32

Nombre d’octets envoyés.

Exceptions

dgram a la valeur null.

UdpClient a déjà établi un hôte distant par défaut.

Une erreur s’est produite pendant l’accès au socket.

Exemples

L’exemple suivant illustre la Send méthode. Cet exemple utilise un nom d’hôte et un numéro de port pour identifier l’hôte cible.

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

Remarques

La Send méthode envoie des datagrammes aux valeurs spécifiées par les hostname paramètres et port retourne le nombre d’octets envoyés avec succès. Vous pouvez envoyer des datagrammes à l’adresse de diffusion par défaut en spécifiant « 255.255.255.255 » pour la valeur du hostname paramètre.

Si vous souhaitez envoyer des datagrammes à une autre adresse de diffusion, utilisez la Client méthode pour obtenir le sous-jacent Socketet définir l’option SocketOptionName.Broadcastde socket sur . Vous pouvez également revenir à l’utilisation de la Socket classe.

Notes

Ne fournissez pas de nom d’hôte ou de numéro de port à cette méthode si vous avez déjà établi un hôte distant avec la Connect méthode. Si vous le faites, la Send méthode lève un SocketException. Si vous recevez un SocketException, utilisez SocketException.ErrorCode pour obtenir le code d’erreur spécifique. Une fois que vous avez obtenu ce code, vous pouvez faire référence à la documentation du code d’erreur de l’API Windows Sockets version 2 pour obtenir une description détaillée de l’erreur.

Voir aussi

S’applique à

Send(ReadOnlySpan<Byte>, String, Int32)

Envoie un datagramme UDP à un port indiqué sur un hôte distant spécifié.

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

Paramètres

datagram
ReadOnlySpan<Byte>

Type ReadOnlySpan<T> Byte qui spécifie le datagramme UDP que vous avez l’intention d’envoyer.

hostname
String

Nom de l’hôte distant auquel vous voulez envoyer le datagramme.

port
Int32

Numéro de port distant avec lequel vous souhaitez communiquer.

Retours

Int32

Nombre d’octets envoyés.

Exceptions

UdpClient a déjà établi un hôte distant par défaut.

Une erreur s’est produite pendant l’accès au socket.

S’applique à

Send(Byte[], Int32, IPEndPoint)

Envoie un datagramme UDP à l’hôte au point de terminaison distant spécifié.

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

Paramètres

dgram
Byte[]

Tableau de type Byte qui spécifie le datagramme UDP que vous voulez envoyer, représenté sous la forme d’un tableau d’octets.

bytes
Int32

Nombre d’octets dans le datagramme.

endPoint
IPEndPoint

IPEndPoint qui représente l’hôte et le port auxquels envoyer le datagramme.

Retours

Int32

Nombre d’octets envoyés.

Exceptions

dgram a la valeur null.

UdpClient a déjà établi un hôte distant par défaut.

Une erreur s’est produite pendant l’accès au socket.

Exemples

L’exemple suivant illustre la Send méthode. Cet exemple utilise un IPEndPoint pour spécifier l’hôte cible.

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

Remarques

La Send méthode envoie des datagrammes au point de terminaison spécifié et retourne le nombre d’octets envoyés avec succès. Avant d’appeler cette surcharge, vous devez d’abord créer une IPEndPoint adresse IP et le numéro de port de l’hôte distant auquel vos datagrammes seront remis. Vous pouvez envoyer des datagrammes à l’adresse de diffusion par défaut, 255.255.255.255, en spécifiant SocketOptionName.Broadcast pour la Address propriété du IPEndPoint. Une fois que vous avez créé ce IPEndPointparamètre, passez-le endPoint à la Send méthode en tant que paramètre.

Si vous souhaitez envoyer des datagrammes à une autre adresse de diffusion, utilisez la Client méthode pour obtenir le sous-jacent Socketet définissez l’option SocketOptionName.Broadcastde socket sur . Vous pouvez également revenir à l’utilisation de la Socket classe.

Notes

Ne fournissez pas de endPoint paramètre à cette méthode si vous avez déjà établi un hôte distant avec la Connect méthode. Si vous le faites, la Send méthode lève un SocketException. Si vous recevez un SocketException, utilisez-le SocketException.ErrorCode pour obtenir le code d’erreur spécifique. Une fois que vous avez obtenu ce code, vous pouvez vous référer à la documentation du code d’erreur de l’API Windows Sockets version 2 pour obtenir une description détaillée de l’erreur.

Voir aussi

S’applique à

Send(Byte[], Int32)

Envoie un datagramme UDP à un hôte distant.

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

Paramètres

dgram
Byte[]

Tableau de type Byte qui spécifie le datagramme UDP à envoyer, représenté sous la forme d’un tableau d’octets.

bytes
Int32

Nombre d’octets dans le datagramme.

Retours

Int32

Nombre d’octets envoyés.

Exceptions

dgram a la valeur null.

UdpClient a déjà établi un hôte distant par défaut.

Une erreur s’est produite pendant l’accès au socket.

Exemples

L’exemple suivant illustre la Send méthode. Vous devez établir un hôte distant par défaut avant d’utiliser cette surcharge.

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

Remarques

Cette surcharge envoie des datagrammes à l’hôte distant établi dans la Connect méthode et retourne le nombre d’octets envoyés. Si vous n’appelez pas avant d’appeler Connect cette surcharge, la Send méthode lève un SocketException. Si vous recevez un SocketException, utilisez-le SocketException.ErrorCode pour obtenir le code d’erreur spécifique. Une fois que vous avez obtenu ce code, vous pouvez vous référer à la documentation du code d’erreur de l’API Windows Sockets version 2 pour obtenir une description détaillée de l’erreur.

Si vous souhaitez envoyer des datagrammes à un autre hôte distant, vous devez appeler la Connect méthode et spécifier l’hôte distant souhaité. Utilisez l’une des autres Send surcharges de méthode pour envoyer des datagrammes à une adresse de diffusion.

Voir aussi

S’applique à

Send(ReadOnlySpan<Byte>)

Envoie un datagramme UDP à un hôte distant.

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

Paramètres

datagram
ReadOnlySpan<Byte>

Type ReadOnlySpan<T> Byte qui spécifie le datagramme UDP que vous envisagez d’envoyer.

Retours

Int32

Nombre d’octets envoyés.

Exceptions

L’hôte UdpClient distant par défaut n’a pas été établi.

Une erreur s’est produite pendant l’accès au socket.

S’applique à

Send(ReadOnlySpan<Byte>, IPEndPoint)

Envoie un datagramme UDP à l’hôte au point de terminaison distant spécifié.

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

Paramètres

datagram
ReadOnlySpan<Byte>

Type ReadOnlySpan<T> Byte qui spécifie le datagramme UDP que vous envisagez d’envoyer.

endPoint
IPEndPoint

IPEndPoint qui représente l’hôte et le port auxquels envoyer le datagramme.

Retours

Int32

Nombre d’octets envoyés.

Exceptions

UdpClient a déjà établi un hôte distant par défaut et endPoint n’est pas null.

Une erreur s’est produite pendant l’accès au socket.

S’applique à