Windows Phone 7 Udp Socket被切断了

时间:2011-07-13 04:26:49

标签: sockets windows-phone-7 udp

我一直想让Udp套接字在Windows Phone 7(Mango)上正常工作。首先我遇到了这个问题udp async receive,现在我发现了它,我看到一种奇怪的行为,我通过套接字发送的数据的结尾都是零。

起初,我认为有一个奇怪的大小帽。我的所有数据包都是用户1380字节。我看到由于某种原因,在〜字节1220之后它全部为零,但根据套接字,我仍然接收所有~1380字节。我将大小与我的服务器应用程序进行了匹配,并且我收到了正确的字节数。所以我在连接的两边打印出字节,并在最后200字节左右的大部分时间内看到了这个问题。

所以我将数据包数据的大小减少到大约1200字节,我仍然看到了这个问题。我甚至将它减少到1000字节仍然!

有什么想法吗?

更新 - 我做了一些测试,似乎最后144个字节是FUBAR。有时他们是零,有时他们是垃圾。认为这是一个错误?

2 个答案:

答案 0 :(得分:0)

您需要检查异步操作中传输的字节数。检查SocketAsyncEventArgs.BytesTransferred以查看缓冲区中有多少字节实际有效。

答案 1 :(得分:0)

抱歉,我的代码中有一个错误,我使用了一个数组,覆盖了我自己的数据。