2010-04-14 26 views
19

Oyun sunucum var (WoW). Oyuncularımın özel yamaları oyuna indirmelerini istiyorum. Güncelleme/indirme işlemlerini kontrol eden bir program yaptım. Programımın tüm yamalarım varsa, programımın oyun sunucuma bir paket göndermesini istiyorum. Sunucudan herhangi bir yanıt almaya ihtiyacım yok, bunu halledecek, ama başka bir hikaye.C# içinde UDP Paket Gönderme #

Bu yüzden, bir sunucuya nasıl paket gönderileceğini öğrenmek istiyorum.

teşekkür ederiz!

cevap

37
Socket sock = new Socket(AddressFamily.InterNetwork, SocketType.Dgram, 
ProtocolType.Udp); 

IPAddress serverAddr = IPAddress.Parse("192.168.2.255"); 

IPEndPoint endPoint = new IPEndPoint(serverAddr, 11000); 

string text = "Hello"; 
byte[] send_buffer = Encoding.ASCII.GetBytes(text); 

sock.SendTo(send_buffer , endPoint); 
+0

teşekkür ederiz! Ben test edeceğim! :) – DOminik

9
static void SendUdp(int srcPort, string dstIp, int dstPort, byte[] data) 
{ 
    using (UdpClient c = new UdpClient(srcPort)) 
     c.Send(data, data.Length, dstIp, dstPort); 
} 

Kullanımı:

SendUdp(11000, "192.168.2.255", 11000, Encoding.ASCII.GetBytes("Hello!")); 
+0

Sorunumu görüyor musun? Erişilemeyen IP adresi ile kullanarak Dispose yöntemi ile üç saniyelik gecikme var. @Bachor https://stackoverflow.com/questions/44694061/udpclient-unreachable-ip-connection-time-with-using-blocks –