【发布时间】:2016-07-24 18:05:29
【问题描述】:
我正在尝试使用两个单独的程序从同一台机器发送和接收 UDP 数据包,但到目前为止我还没有收到任何东西。我已经尝试完全关闭我的防火墙,但仍然没有奏效。
发送程序
var sender = new UdpClient(Dns.GetHostName(), 2055);
var data = new byte[] { 0, 1, 2, 3, 4, 5 };
sender.Send(data, data.Length);
接收程序
var receiver = new UdpClient(2055);
var endPoint = new IPEndPoint(IPAddress.Any, 2055);
var data = receiver.Receive(ref endPoint);
System.Console.WriteLine("Data received");
我什至复制并粘贴了本教程 http://www.codeproject.com/Articles/10649/An-Introduction-to-Socket-Programming-in-NET-using 中的代码,但仍然没有成功。
【问题讨论】:
-
什么是
Dns.GetHostName()?不应该是127.0.0.1吗? -
啊,这成功了!您能否发布一个答案(以便我可以选择它作为解决方案)并解释一下为什么它有效而不是 Dns.GetHostName()?我在同一台机器上通过 TCP 连接很好地使用了 GetHostName()。
-
当然,很高兴我们能够提供帮助:)
标签: c# .net networking udp