web-dev-qa-db-ja.com

C#でUDPパケットを送信する

ゲームサーバー(WoW)があります。プレーヤーにカスタムパッチをゲームにダウンロードしてもらいたい。アップデート/ダウンロードをチェックするプログラムを実行しました。プレイヤーがすべてのパッチを持っている場合、プログラムがゲームサーバーにパケットを送信するようにします。サーバーからの応答は必要ありません。サーバーはそれを処理しますが、別の話です。

パケットをサーバーに送信する方法を知りたい

ありがとうございました!

26
DOminik
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);
45
nos
static void SendUdp(int srcPort, string dstIp, int dstPort, byte[] data)
{
    using (UdpClient c = new UdpClient(srcPort))
        c.Send(data, data.Length, dstIp, dstPort);
}

使用法:

SendUdp(11000, "192.168.2.255", 11000, Encoding.ASCII.GetBytes("Hello!"));
11
Bachor