UdpClient.Send Metod
Definition
Viktigt
En del information gäller för förhandsversionen av en produkt och kan komma att ändras avsevärt innan produkten blir allmänt tillgänglig. Microsoft lämnar inga garantier, uttryckliga eller underförstådda, avseende informationen som visas här.
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.
Är UdpClient stängd.
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.
UdpClient är stängd.
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.
Är UdpClient stängd.
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.