Sockets Windows Phone-Udp

Sockets Windows Phone-Udp,sockets,windows-phone-7.1,Sockets,Windows Phone 7.1,是否有人尝试在Windows Phone 7.1(RC)上使用Udp单播?我想问你们几个问题 根据文档,唯一受支持的协议类型是TCP协议。这是否意味着不完全支持Udp单播 我发现我们只能在SendToAsync的完成事件中调用ReceiveFromAsync。否则,它将抛出“提供的参数无效”异常。为什么它是这样工作的?其他人也有同样的问题 我使用MSDN示例和其他一些C#Udp客户端进行了测试。我发现SendToAsync方法工作正常。但是ReceiveFromAsync不工作。有人知道怎么修吗

是否有人尝试在Windows Phone 7.1(RC)上使用Udp单播?我想问你们几个问题

  • 根据文档,唯一受支持的协议类型是TCP协议。这是否意味着不完全支持Udp单播

  • 我发现我们只能在SendToAsync的完成事件中调用ReceiveFromAsync。否则,它将抛出“提供的参数无效”异常。为什么它是这样工作的?其他人也有同样的问题

  • 我使用MSDN示例和其他一些C#Udp客户端进行了测试。我发现SendToAsync方法工作正常。但是ReceiveFromAsync不工作。有人知道怎么修吗

    private void OnRecieve() {
    
      var receiveArgs = new SocketAsyncEventArgs();
      receiveArgs.RemoteEndPoint = new IPEndPoint(IPAddress.Any, PORT);    
      receiveArgs.SetBuffer(new Byte[1024], 0, 1024);    
    
      var strBdr = new StringBuilder();
      receiveArgs.Completed += (__, result) => {
                    var package = Encoding.UTF8.GetString(result.Buffer, 0, result.BytesTransferred);
                    if (!string.IsNullOrEmpty(package)) {
                        this.RaiseReceived(package);
                    }
                    socket.ReceiveFromAsync(receiveArgs);
                };
                socket.ReceiveFromAsync(receiveArgs);
            }
    
  • 谢谢大家

  • 根据文档“对于Windows Phone OS 7.1,支持TCP单播、UDP单播和UDP多播客户端。”(我使用了您的链接)
  • 我的理解是,出于安全目的,您只能从您发起通信的IP接收
  • 您正在混合c#代码和Silverlight代码,WP7只支持Silverlight
  • 根据文档“对于Windows Phone OS 7.1,支持TCP单播、UDP单播和UDP多播客户端。”(我使用了您的链接)
  • 我的理解是,出于安全目的,您只能从您发起通信的IP接收
  • 您正在混合c#代码和Silverlight代码,WP7只支持Silverlight