UdpClient.Send Metod

Definition

Skickar ett UDP-datagram till en fjärrvärd.

Överlagringar

Name Description
Send(Byte[], Int32)

Skickar ett UDP-datagram till en fjärrvärd.

Send(Byte[], Int32, IPEndPoint)

Skickar ett UDP-datagram till värden vid den angivna fjärrslutpunkten.

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

Skickar ett UDP-datagram till en angiven port på en angiven fjärrvärd.

Send(Byte[], Int32)

Skickar ett UDP-datagram till en fjärrvärd.

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

Parametrar

dgram
Byte[]

En matris av typen Byte som anger det UDP-datagram som du tänker skicka representeras som en matris med byte.

bytes
Int32

Antalet byte i datagrammet.

Returer

Antal byte som skickas.

Undantag

dgram är null.

UdpClient har redan upprättat en standardvärd för fjärranslutning.

Ett fel uppstod vid åtkomst till socketen.

Exempel

I följande exempel visas Send metoden. Du måste upprätta en fjärrvärd som är standard innan du använder den här överlagringen.

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

Kommentarer

Den här överlagringen skickar datagram till fjärrvärden som upprättats i Connect metoden och returnerar antalet skickade byte. Om du inte anropar Connect innan du anropar den här överlagringen Send genererar metoden en SocketException. Om du får en SocketExceptionanvänder SocketException.ErrorCode du för att hämta den specifika felkoden. När du har fått den här koden kan du läsa felkoden Windows Sockets version 2 API för en detaljerad beskrivning av felet.

Om du vill skicka datagram till en annan fjärrvärd måste du anropa Connect metoden och ange önskad fjärrvärd. Använd någon av de andra Send metodöverlagringarna för att skicka datagram till en sändningsadress.

Se även

Gäller för

Send(Byte[], Int32, IPEndPoint)

Skickar ett UDP-datagram till värden vid den angivna fjärrslutpunkten.

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);
member this.Send : byte[] * int * System.Net.IPEndPoint -> int
Public Function Send (dgram As Byte(), bytes As Integer, endPoint As IPEndPoint) As Integer

Parametrar

dgram
Byte[]

En matris av typen Byte som anger det UDP-datagram som du tänker skicka, representerat som en matris med byte.

bytes
Int32

Antalet byte i datagrammet.

endPoint
IPEndPoint

En IPEndPoint som representerar värden och porten som datagrammet ska skickas till.

Returer

Antal byte som skickas.

Undantag

dgram är null.

UdpClient har redan upprättat en standardvärd för fjärranslutningen.

Ett fel uppstod vid åtkomst till socketen.

Exempel

I följande exempel visas Send metoden. I det här exemplet används en IPEndPoint för att ange målvärden.

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

Kommentarer

Metoden Send skickar datagram till den angivna slutpunkten och returnerar antalet byte som har skickats. Innan du anropar den här överlagringen måste du först skapa en IPEndPoint med ip-adressen och portnumret för fjärrvärden som dina datagram ska levereras till. Du kan skicka datagram till standardutsändningsadressen 255.255.255.255 genom att SocketOptionName.Broadcast ange egenskapen IPEndPointför Address . När du har skapat den skickar IPEndPointdu den Send till metoden som endPoint parameter.

Om du vill skicka datagram till någon annan sändningsadress använder du Client metoden för att hämta den underliggande Socketoch ställer in socketalternativet på SocketOptionName.Broadcast. Du kan också återgå till att använda Socket klassen.

Note

Ange endPoint ingen parameter för den här metoden om du redan har upprättat en fjärrvärd med Connect metoden. Om du gör det Send genererar metoden en SocketException. Om du får en SocketExceptionanvänder SocketException.ErrorCode du för att hämta den specifika felkoden. När du har fått den här koden kan du läsa felkoden Windows Sockets version 2 API för en detaljerad beskrivning av felet.

Se även

Gäller för

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

Skickar ett UDP-datagram till en angiven port på en angiven fjärrvärd.

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);
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

Parametrar

dgram
Byte[]

En matris av typen Byte som anger det UDP-datagram som du tänker skicka representeras som en matris med byte.

bytes
Int32

Antalet byte i datagrammet.

hostname
String

Namnet på fjärrvärden som du tänker skicka datagrammet till.

port
Int32

Det fjärrportnummer som du tänker kommunicera med.

Returer

Antal byte som skickas.

Undantag

dgram är null.

UdpClient har redan upprättat en standardvärd för fjärranslutning.

Ett fel uppstod vid åtkomst till socketen.

Exempel

I följande exempel visas Send metoden. I det här exemplet används ett värdnamn och ett portnummer för att identifiera målvärden.

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

Kommentarer

Metoden Send skickar datagram till de värden som anges av parametrarna hostname och port och returnerar antalet byte som har skickats. Du kan skicka datagram till standardutsändningsadressen hostname genom att ange "255.255.255.255".

Om du vill skicka datagram till någon annan sändningsadress använder du Client metoden för att hämta den underliggande Socketoch ställer in socketalternativet på SocketOptionName.Broadcast. Du kan också återgå till att använda Socket klassen.

Note

Ange inte ett värdnamn eller portnummer för den här metoden om du redan har upprättat en fjärrvärd med Connect metoden. Om du gör det Send genererar metoden en SocketException. Om du får en SocketExceptionanvänder SocketException.ErrorCode du för att hämta den specifika felkoden. När du har fått den här koden kan du läsa felkoden Windows Sockets version 2 API för en detaljerad beskrivning av felet.

Se även

Gäller för