Condividi tramite


UdpClient.Send Metodo

Definizione

Invia un datagramma UDP a un host remoto.

Overload

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

Invia un datagramma UDP a una porta specificata in un host remoto specificato.

Send(ReadOnlySpan<Byte>, String, Int32)

Invia un datagramma UDP a una porta specificata in un host remoto specificato.

Send(Byte[], Int32, IPEndPoint)

Invia un datagramma UDP all'host all'endpoint remoto specificato.

Send(Byte[], Int32)

Invia un datagramma UDP a un host remoto.

Send(ReadOnlySpan<Byte>)

Invia un datagramma UDP a un host remoto.

Send(ReadOnlySpan<Byte>, IPEndPoint)

Invia un datagramma UDP all'host all'endpoint remoto specificato.

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

Origine:
UDPClient.cs
Origine:
UDPClient.cs
Origine:
UDPClient.cs

Invia un datagramma UDP a una porta specificata in un host remoto specificato.

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

Parametri

dgram
Byte[]

Matrice di tipo Byte che specifica il datagramma UDP da inviare, rappresentato come una matrice di byte.

bytes
Int32

Numero di byte nel datagramma.

hostname
String

Nome dell'host remoto a cui si vuole inviare il datagramma.

port
Int32

Numero di porta remota con cui si vuole comunicare.

Restituisce

Numero di byte inviati.

Eccezioni

dgram è null.

UdpClient ha già stabilito un host remoto predefinito.

Si è verificato un errore durante l'accesso al socket.

Esempio

Nell'esempio seguente viene illustrato il Send metodo. In questo esempio viene usato un nome host e un numero di porta per identificare l'host di destinazione.

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

Commenti

Il Send metodo invia i datagrammi ai valori specificati dai hostname parametri e port e restituisce il numero di byte inviati correttamente. È possibile inviare datagrammi all'indirizzo di trasmissione predefinito specificando "255.255.255.255" per il valore del hostname parametro.

Se si desidera inviare datagrammi a qualsiasi altro indirizzo di trasmissione, usare il metodo per ottenere l'opzione Client sottostante Sockete impostare l'opzione socket su SocketOptionName.Broadcast. È anche possibile ripristinare l'uso della Socket classe.

Nota

Non specificare un nome host o un numero di porta a questo metodo se è già stato stabilito un host remoto con il Connect metodo . In caso affermativo, il Send metodo genererà un SocketExceptionoggetto . Se si riceve un SocketExceptionoggetto , usare SocketException.ErrorCode per ottenere il codice di errore specifico. Dopo aver ottenuto questo codice, è possibile fare riferimento alla documentazione del codice di errore dell'API Windows Sockets versione 2 per una descrizione dettagliata dell'errore.

Vedi anche

Si applica a

Send(ReadOnlySpan<Byte>, String, Int32)

Origine:
UDPClient.cs
Origine:
UDPClient.cs
Origine:
UDPClient.cs

Invia un datagramma UDP a una porta specificata in un host remoto specificato.

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

Parametri

datagram
ReadOnlySpan<Byte>

Oggetto ReadOnlySpan<T> type Byte che specifica l'oggetto UDP datagram che si intende inviare.

hostname
String

Nome dell'host remoto a cui si vuole inviare il datagramma.

port
Int32

Numero di porta remota con cui si vuole comunicare.

Restituisce

Numero di byte inviati.

Eccezioni

UdpClient ha già stabilito un host remoto predefinito.

Si è verificato un errore durante l'accesso al socket.

Si applica a

Send(Byte[], Int32, IPEndPoint)

Origine:
UDPClient.cs
Origine:
UDPClient.cs
Origine:
UDPClient.cs

Invia un datagramma UDP all'host all'endpoint remoto specificato.

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

Parametri

dgram
Byte[]

Matrice di tipo Byte che specifica il datagramma UDP da inviare, rappresentato come una matrice di byte.

bytes
Int32

Numero di byte nel datagramma.

endPoint
IPEndPoint

IPEndPoint che rappresenta l'host e la porta a cui inviare il datagramma.

Restituisce

Numero di byte inviati.

Eccezioni

dgram è null.

UdpClient ha già stabilito un host remoto predefinito.

Si è verificato un errore durante l'accesso al socket.

Esempio

Nell'esempio seguente viene illustrato il Send metodo. In questo esempio viene usato un IPEndPoint oggetto per specificare l'host di destinazione.

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

Commenti

Il Send metodo invia i datagrammi all'endpoint specificato e restituisce il numero di byte inviati correttamente. Prima di chiamare questo overload, è prima necessario creare un IPEndPoint oggetto usando l'indirizzo IP e il numero di porta dell'host remoto a cui verranno recapitati i datagrammi. È possibile inviare datagrammi all'indirizzo di trasmissione predefinito, 255.255.255.255, specificando SocketOptionName.Broadcast per la proprietà dell'oggetto AddressIPEndPoint. Dopo aver creato questo IPEndPointoggetto , passarlo al Send metodo come endPoint parametro.

Se si desidera inviare datagrammi a qualsiasi altro indirizzo di trasmissione, usare il metodo per ottenere l'opzione Client sottostante Sockete impostare l'opzione socket su SocketOptionName.Broadcast. È anche possibile ripristinare l'uso della Socket classe.

Nota

Non fornire un parametro a questo metodo se è già stato stabilito un endPoint host remoto con il Connect metodo . In caso affermativo, il Send metodo genererà un SocketExceptionoggetto . Se si riceve un SocketExceptionoggetto , usare SocketException.ErrorCode per ottenere il codice di errore specifico. Dopo aver ottenuto questo codice, è possibile fare riferimento alla documentazione del codice di errore dell'API Windows Sockets versione 2 per una descrizione dettagliata dell'errore.

Vedi anche

Si applica a

Send(Byte[], Int32)

Origine:
UDPClient.cs
Origine:
UDPClient.cs
Origine:
UDPClient.cs

Invia un datagramma UDP a un host remoto.

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

Parametri

dgram
Byte[]

Matrice di tipo Byte che specifica il datagramma UDP da inviare, rappresentato come una matrice di byte.

bytes
Int32

Numero di byte nel datagramma.

Restituisce

Numero di byte inviati.

Eccezioni

dgram è null.

UdpClient ha già stabilito un host remoto predefinito.

Si è verificato un errore durante l'accesso al socket.

Esempio

Nell'esempio seguente viene illustrato il Send metodo. È necessario stabilire un host remoto predefinito prima di usare questo overload.

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

Commenti

Questo overload invia i datagrammi all'host remoto stabilito nel Connect metodo e restituisce il numero di byte inviati. Se non si chiama Connect prima di chiamare questo overload, il Send metodo genererà un SocketExceptionoggetto . Se si riceve un SocketExceptionoggetto , usare SocketException.ErrorCode per ottenere il codice di errore specifico. Dopo aver ottenuto questo codice, è possibile fare riferimento alla documentazione del codice di errore dell'API Windows Sockets versione 2 per una descrizione dettagliata dell'errore.

Se si desidera inviare datagrammi a un host remoto diverso, è necessario chiamare il metodo e specificare l'host Connect remoto desiderato. Usare uno degli altri Send overload del metodo per inviare datagrammi a un indirizzo di trasmissione.

Vedi anche

Si applica a

Send(ReadOnlySpan<Byte>)

Origine:
UDPClient.cs
Origine:
UDPClient.cs
Origine:
UDPClient.cs

Invia un datagramma UDP a un host remoto.

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

Parametri

datagram
ReadOnlySpan<Byte>

Oggetto ReadOnlySpan<T> type Byte che specifica l'oggetto UDP datagram che si intende inviare.

Restituisce

Numero di byte inviati.

Eccezioni

Non UdpClient è stato stabilito un host remoto predefinito.

Si è verificato un errore durante l'accesso al socket.

Si applica a

Send(ReadOnlySpan<Byte>, IPEndPoint)

Origine:
UDPClient.cs
Origine:
UDPClient.cs
Origine:
UDPClient.cs

Invia un datagramma UDP all'host all'endpoint remoto specificato.

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

Parametri

datagram
ReadOnlySpan<Byte>

Oggetto ReadOnlySpan<T> type Byte che specifica l'oggetto UDP datagram che si intende inviare.

endPoint
IPEndPoint

IPEndPoint che rappresenta l'host e la porta a cui inviare il datagramma.

Restituisce

Numero di byte inviati.

Eccezioni

UdpClient ha già stabilito un host remoto predefinito e endPoint non nullè .

Si è verificato un errore durante l'accesso al socket.

Si applica a