0

我正在尝试通过 Windows Phone 上的 UDP 协议传输数据。这是代码-

_socket = new Socket(AddressFamily.InterNetwork, SocketType.Dgram, ProtocolType.Udp);
        if (_socket != null)
        {

            SocketAsyncEventArgs socketEventArg = new SocketAsyncEventArgs();

            socketEventArg.RemoteEndPoint = new DnsEndPoint("CompName", 11000);

            byte[] payload = Encoding.UTF8.GetBytes("String Payload");

            socketEventArg.SetBuffer(newtest, 0, newtest.Length);

            _socket.SendToAsync(socketEventArg);
        }

当我发送一个字符串时,这段代码工作得很好。但是,当我用相机预览中的数据替换这个字节数组时,像这样 -

 cam.GetPreviewBufferYCbCr(payload);

其中 cam 是正确初始化的 PhotoCamera 对象,会产生以下两个错误并且传输不工作。

System.Net.dll 中出现“System.InvalidCastException”类型的第一次机会异常

System.Net.dll 中出现“System.Net.Sockets.SocketException”类型的第一次机会异常

我测试并确保这不是较大字节数组大小的问题。任何指向正确方向的指针将不胜感激!

4

0 回答 0