UdpClient Sınıf
Tanım
Önemli
Bazı bilgiler ürünün ön sürümüyle ilgilidir ve sürüm öncesinde önemli değişiklikler yapılmış olabilir. Burada verilen bilgilerle ilgili olarak Microsoft açık veya zımni hiçbir garanti vermez.
Kullanıcı Veri Birimi Protokolü (UDP) ağ hizmetleri sağlar.
public ref class UdpClient : IDisposable
public class UdpClient : IDisposable
type UdpClient = class
interface IDisposable
Public Class UdpClient
Implements IDisposable
- Devralma
-
UdpClient
- Uygulamalar
Örnekler
Aşağıdaki örnek, bağlantı noktası 11000'de ana bilgisayar adını www.contoso.com
kullanarak bir UdpClient bağlantı kurar. İki ayrı uzak konak makinesine küçük bir dize iletisi gönderilir. yöntemi, Receive bir ileti alınana kadar yürütmeyi engeller.
IPEndPoint öğesine geçirilen Receivekullanılarak, yanıtlayan konağın kimliği gösterilir.
// With this constructor the local port number is arbitrarily assigned.
UdpClient^ udpClient = gcnew UdpClient;
try
{
udpClient->Connect( "host.contoso.com", 11000 );
// Send message to the host to which you have connected.
array<Byte>^sendBytes = Encoding::ASCII->GetBytes( "Is anybody there?" );
udpClient->Send( sendBytes, sendBytes->Length );
// Send message to a different host using optional hostname and port parameters.
UdpClient^ udpClientB = gcnew UdpClient;
udpClientB->Send( sendBytes, sendBytes->Length, "AlternateHostMachineName", 11000 );
//IPEndPoint object will allow us to read datagrams sent from any source.
IPEndPoint^ RemoteIpEndPoint = gcnew IPEndPoint( IPAddress::Any,0 );
// Block until a message returns on this socket from a remote host.
array<Byte>^receiveBytes = udpClient->Receive( RemoteIpEndPoint );
String^ returnData = Encoding::ASCII->GetString( receiveBytes );
// Use the IPEndPoint object to determine which of these two hosts responded.
Console::WriteLine( String::Concat( "This is the message you received ", returnData->ToString() ) );
Console::WriteLine( String::Concat( "This message was sent from ", RemoteIpEndPoint->Address->ToString(), " on their port number ", RemoteIpEndPoint->Port.ToString() ) );
udpClient->Close();
udpClientB->Close();
}
catch ( Exception^ e )
{
Console::WriteLine( e->ToString() );
}
// This constructor arbitrarily assigns the local port number.
UdpClient udpClient = new UdpClient(11000);
try{
udpClient.Connect("www.contoso.com", 11000);
// Sends a message to the host to which you have connected.
Byte[] sendBytes = Encoding.ASCII.GetBytes("Is anybody there?");
udpClient.Send(sendBytes, sendBytes.Length);
// Sends a message to a different host using optional hostname and port parameters.
UdpClient udpClientB = new UdpClient();
udpClientB.Send(sendBytes, sendBytes.Length, "AlternateHostMachineName", 11000);
//IPEndPoint object will allow us to read datagrams sent from any source.
IPEndPoint RemoteIpEndPoint = new IPEndPoint(IPAddress.Any, 0);
// Blocks until a message returns on this socket from a remote host.
Byte[] receiveBytes = udpClient.Receive(ref RemoteIpEndPoint);
string returnData = Encoding.ASCII.GetString(receiveBytes);
// Uses the IPEndPoint object to determine which of these two hosts responded.
Console.WriteLine("This is the message you received " +
returnData.ToString());
Console.WriteLine("This message was sent from " +
RemoteIpEndPoint.Address.ToString() +
" on their port number " +
RemoteIpEndPoint.Port.ToString());
udpClient.Close();
udpClientB.Close();
}
catch (Exception e ) {
Console.WriteLine(e.ToString());
}
' This constructor arbitrarily assigns the local port number.
Dim udpClient As New UdpClient(11000)
Try
udpClient.Connect("www.contoso.com", 11000)
' Sends a message to the host to which you have connected.
Dim sendBytes As [Byte]() = Encoding.ASCII.GetBytes("Is anybody there?")
udpClient.Send(sendBytes, sendBytes.Length)
' Sends message to a different host using optional hostname and port parameters.
Dim udpClientB As New UdpClient()
udpClientB.Send(sendBytes, sendBytes.Length, "AlternateHostMachineName", 11000)
' IPEndPoint object will allow us to read datagrams sent from any source.
Dim RemoteIpEndPoint As New IPEndPoint(IPAddress.Any, 0)
' UdpClient.Receive blocks until a message is received from a remote host.
Dim receiveBytes As [Byte]() = udpClient.Receive(RemoteIpEndPoint)
Dim returnData As String = Encoding.ASCII.GetString(receiveBytes)
' Which one of these two hosts responded?
Console.WriteLine(("This is the message you received " + _
returnData.ToString()))
Console.WriteLine(("This message was sent from " + _
RemoteIpEndPoint.Address.ToString() + _
" on their port number " + _
RemoteIpEndPoint.Port.ToString()))
udpClient.Close()
udpClientB.Close()
Catch e As Exception
Console.WriteLine(e.ToString())
End Try
End Sub
Açıklamalar
UdpClient sınıfı, zaman uyumlu modu engelleyen bağlantısız UDP veri birimleri göndermek ve almak için basit yöntemler sağlar. UDP bağlantısız bir aktarım protokolü olduğundan, veri gönderip almadan önce uzak konak bağlantısı kurmanız gerekmez. Ancak, aşağıdaki iki yoldan biriyle varsayılan uzak konak oluşturma seçeneğiniz vardır:
Uzak ana bilgisayar adını ve bağlantı noktası numarasını parametre olarak kullanarak sınıfın bir örneğini UdpClient İçerik Oluşturucu.
sınıfının bir örneğini UdpClient İçerik Oluşturucu ve ardından yöntemini çağırınConnect.
Uzak bir cihaza veri göndermek için içinde UdpClient sağlanan gönderme yöntemlerinden herhangi birini kullanabilirsiniz. Receive Uzak konaklardan veri almak için yöntemini kullanın.
Not
Bir ana bilgisayar adı kullanarak veya IPEndPoint varsayılan bir uzak ana bilgisayar belirttiyseniz aramayınSend. Bunu yaparsanız, UdpClient bir özel durum oluşturur.
UdpClient yöntemleri, çok noktaya yayın veri birimleri göndermenize ve almanıza da olanak sağlar. JoinMulticastGroup çok noktaya yayın grubuna abone UdpClient olmak için yöntemini kullanın. DropMulticastGroup Çok noktaya yayın grubundan aboneliği UdpClient kaldırmak için yöntemini kullanın.
Oluşturucular
UdpClient() |
UdpClient sınıfının yeni bir örneğini başlatır. |
UdpClient(AddressFamily) |
UdpClient sınıfının yeni bir örneğini başlatır. |
UdpClient(Int32) |
sınıfının yeni bir örneğini UdpClient başlatır ve sağlanan yerel bağlantı noktası numarasına bağlar. |
UdpClient(Int32, AddressFamily) |
sınıfının yeni bir örneğini UdpClient başlatır ve sağlanan yerel bağlantı noktası numarasına bağlar. |
UdpClient(IPEndPoint) |
sınıfının yeni bir örneğini UdpClient başlatır ve belirtilen yerel uç noktaya bağlar. |
UdpClient(String, Int32) |
sınıfının yeni bir örneğini UdpClient başlatır ve varsayılan uzak konağı oluşturur. |
Özellikler
Active |
Varsayılan uzak konağın oluşturulup oluşturulmadığını belirten bir değer alır veya ayarlar. |
Available |
Ağdan alınan ve okunabilen veri miktarını alır. |
Client |
Temel ağı Socketalır veya ayarlar. |
DontFragment |
İnternet Protokolü (IP) veri birimlerinin UdpClient parçalanıp parçalanmadığını belirten bir Boolean değer alır veya ayarlar. |
EnableBroadcast |
yayın paketleri gönderip gönderemeyeceğini UdpClient belirten bir Boolean değer alır veya ayarlar. |
ExclusiveAddressUse |
yalnızca bir Boolean istemcinin bağlantı noktası kullanmasına izin verip vermediğini UdpClient belirten bir değer alır veya ayarlar. |
MulticastLoopback |
Giden çok noktaya yayın paketlerinin gönderen uygulamaya teslim edilip edilmeyeceğini belirten bir Boolean değer alır veya ayarlar. |
Ttl |
tarafından UdpClientgönderilen İnternet Protokolü (IP) paketlerinin Yaşam Süresi (TTL) değerini belirten bir değer alır veya ayarlar. |
Yöntemler
AllowNatTraversal(Boolean) |
Bir UdpClient örnekte Ağ Adresi Çevirisi (NAT) geçişi etkinleştirir veya devre dışı bırakır. |
BeginReceive(AsyncCallback, Object) |
Uzak konaktan zaman uyumsuz olarak bir veri birimi alır. |
BeginSend(Byte[], Int32, AsyncCallback, Object) |
Zaman uyumsuz olarak uzak bir konağa veri birimi gönderir. Hedef daha önce çağrısıyla Connectbelirtildi. |
BeginSend(Byte[], Int32, IPEndPoint, AsyncCallback, Object) |
Bir hedefe zaman uyumsuz olarak bir veri birimi gönderir. Hedef bir EndPointtarafından belirtilir. |
BeginSend(Byte[], Int32, String, Int32, AsyncCallback, Object) |
Bir hedefe zaman uyumsuz olarak bir veri birimi gönderir. Hedef, ana bilgisayar adı ve bağlantı noktası numarasıyla belirtilir. |
Close() |
UDP bağlantısını kapatır. |
Connect(IPAddress, Int32) |
Belirtilen IP adresini ve bağlantı noktası numarasını kullanarak varsayılan bir uzak konak oluşturur. |
Connect(IPEndPoint) |
Belirtilen ağ uç noktasını kullanarak varsayılan bir uzak konak oluşturur. |
Connect(String, Int32) |
Belirtilen ana bilgisayar adını ve bağlantı noktası numarasını kullanarak varsayılan bir uzak konak oluşturur. |
Dispose() |
tarafından UdpClientkullanılan yönetilen ve yönetilmeyen kaynakları serbest bırakır. |
Dispose(Boolean) |
UdpClient tarafından kullanılan yönetilmeyen kaynakları serbest bırakır ve yönetilen kaynakları isteğe bağlı olarak serbest bırakır. |
DropMulticastGroup(IPAddress) |
Çok noktaya yayın grubundan ayrılır. |
DropMulticastGroup(IPAddress, Int32) |
Çok noktaya yayın grubundan ayrılır. |
EndReceive(IAsyncResult, IPEndPoint) |
Bekleyen zaman uyumsuz alma işlemini sonlandırır. |
EndSend(IAsyncResult) |
Bekleyen zaman uyumsuz göndermeyi sonlandırır. |
Equals(Object) |
Belirtilen nesnenin geçerli nesneye eşit olup olmadığını belirler. (Devralındığı yer: Object) |
GetHashCode() |
Varsayılan karma işlevi işlevi görür. (Devralındığı yer: Object) |
GetType() |
Type Geçerli örneğini alır. (Devralındığı yer: Object) |
JoinMulticastGroup(Int32, IPAddress) |
Çok noktaya yayın grubuna bir UdpClient ekler. |
JoinMulticastGroup(IPAddress) |
Çok noktaya yayın grubuna bir UdpClient ekler. |
JoinMulticastGroup(IPAddress, Int32) |
UdpClient Belirtilen Yaşam Süresi (TTL) ile bir çok noktaya yayın grubuna ekler. |
JoinMulticastGroup(IPAddress, IPAddress) |
Çok noktaya yayın grubuna bir UdpClient ekler. |
MemberwiseClone() |
Geçerli Objectöğesinin sığ bir kopyasını oluşturur. (Devralındığı yer: Object) |
Receive(IPEndPoint) |
Uzak bir konak tarafından gönderilen bir UDP veri birimi döndürür. |
ReceiveAsync() |
Uzak bir konak tarafından gönderilen zaman uyumsuz bir UDP veri birimi döndürür. |
ReceiveAsync(CancellationToken) |
Uzak bir konak tarafından gönderilen zaman uyumsuz bir UDP veri birimi döndürür. |
Send(Byte[], Int32) |
Uzak bir konağa UDP veri birimi gönderir. |
Send(Byte[], Int32, IPEndPoint) |
Belirtilen uzak uç noktadaki konağa bir UDP veri birimi gönderir. |
Send(Byte[], Int32, String, Int32) |
Belirtilen uzak konakta belirtilen bağlantı noktasına bir UDP veri birimi gönderir. |
Send(ReadOnlySpan<Byte>) |
Uzak bir konağa UDP veri birimi gönderir. |
Send(ReadOnlySpan<Byte>, IPEndPoint) |
Belirtilen uzak uç noktadaki konağa bir UDP veri birimi gönderir. |
Send(ReadOnlySpan<Byte>, String, Int32) |
Belirtilen uzak konakta belirtilen bağlantı noktasına bir UDP veri birimi gönderir. |
SendAsync(Byte[], Int32) |
Uzak bir konağa zaman uyumsuz olarak bir UDP veri birimi gönderir. |
SendAsync(Byte[], Int32, IPEndPoint) |
Uzak bir konağa zaman uyumsuz olarak bir UDP veri birimi gönderir. |
SendAsync(Byte[], Int32, String, Int32) |
Uzak bir konağa zaman uyumsuz olarak bir UDP veri birimi gönderir. |
SendAsync(ReadOnlyMemory<Byte>, CancellationToken) |
Uzak bir konağa zaman uyumsuz olarak bir UDP veri birimi gönderir. |
SendAsync(ReadOnlyMemory<Byte>, IPEndPoint, CancellationToken) |
Uzak bir konağa zaman uyumsuz olarak bir UDP veri birimi gönderir. |
SendAsync(ReadOnlyMemory<Byte>, String, Int32, CancellationToken) |
Uzak bir konağa zaman uyumsuz olarak bir UDP veri birimi gönderir. |
ToString() |
Geçerli nesneyi temsil eden dizeyi döndürür. (Devralındığı yer: Object) |
Belirtik Arabirim Kullanımları
IDisposable.Dispose() |
Bu API, ürün altyapısını destekler ve doğrudan kodunuzdan kullanıma yönelik değildir. UdpClient tarafından kullanılan tüm kaynakları serbest bırakır. |