我正在製作一個連接到桌面應用程序的Win RT應用程序,他們開始使用UDP和TCP進行通信。DatagramSocket無法接收來自UdpClient的數據
我已經成功實現了TCP通信,我可以從Win RT發送到桌面並從桌面發送到Win RT。在Win RT上使用StreamSocket,在桌面上使用TcpListener。
我也使它從Win RT發送Udp數據到桌面沒有任何問題。但我無法接收從桌面發送到Win RT的數據。我使用下面的代碼,我沒有看到任何問題,但必須有一些。
var g = new DatagramSocket();
g.MessageReceived += g_MessageReceived;
g.BindEndpointAsync(new HostName("127.0.0.1"), "6700");
.
.
.
void g_MessageReceived(DatagramSocket sender, DatagramSocketMessageReceivedEventArgs args)
{ // <- break point here.
}
該斷點永遠不會停止代碼,這意味着它永遠不會收到消息。 我只能想到IBuffer,因爲在我的StreamSocket上,我應該通過reader.GetBuffers()獲取字節,而不是reader.GetBytes()。但是,這是我需要考慮在Win RT而不是桌面上的事情。因爲在Tcp上我只是發送字節,並且我在Win RT中獲得緩衝區,所以DatagramSocket也應該發生這種情況。
- 讀卡器= DataReader的
謝謝你們。
本文可能有所幫助。 http://msdn.microsoft.com/en-us/library/windows/apps/Hh780593.aspx –