3
嗨,大家好,我正在開發一個應用程序,其中廣播是必不可少的。我創建了兩個項目Client和Server。我能夠發送廣播消息,但我沒有收到服務器項目。我的代碼如下UDP廣播不能在Windows 8的同一臺機器上工作
服務器
private DatagramSocket _udpSocket = new DatagramSocket();
private async void Button_Click_1(object sender, RoutedEventArgs e)
{
_udpSocket.MessageReceived += _udpSocket_MessageReceived;
await _udpSocket.BindServiceNameAsync("4777");
}
void _udpSocket_MessageReceived(DatagramSocket sender, DatagramSocketMessageReceivedEventArgs args)
{
}
客戶
HostName h = new HostName("255.255.255.255");
IOutputStream outStream = await _socket.GetOutputStreamAsync(h, "4777");
DataWriter de = new DataWriter(outStream);
de.WriteByte(new byte());
await de.StoreAsync();
de.DetachBuffer();
但如果客戶端我用本地ip地址替換255.255.255.255,我能收到服務器的消息。
任何猜測什麼是問題?
是服務器在同一個網絡/子網客戶端PC? – TimVK
服務器在同一個網絡上,服務器和客戶端都在同一臺PC上運行 – nucleons
防火牆是否阻塞了端口?你檢查過了嗎?或者你甚至可以用255.255.255.255代替廣播地址您的網絡本身 – TimVK