TCP-клиент UWP - чтение байтов - PullRequest
0 голосов
/ 07 июня 2019

Я занимаюсь разработкой приложения UWP с использованием Unity для HoloLens.Целью этого приложения является чтение потока данных с TCP-сервера.Проблема в том, что данные, которые я отправляю, имеют тип double.

Самое интересное, что HoloLens не имеет всех API C # в качестве Unity.Исходя из этого https://docs.microsoft.com/en-us/windows/uwp/gaming/missing-dot-net-apis-in-unity-and-uwp я должен написать код дважды, чтобы выполнить его как в редакторе, так и на устройстве.Я не могу найти, как использовать библиотеки UWP для чтения потока байтов.

Для Unity я могу использовать TcpClient (этот случай работает):

    client = new System.Net.Sockets.TcpClient(host, Int32.Parse(port));
    stream = client.GetStream(); //get stream object for reading

    Debug.Log("connected \n");
    // Read incoming stream into byte array.    
    int i;
    i = stream.Read(bytes, 0, bytes.Length);

Как я могу использовать Windows.Networking.Sockets.StreamSocket () для чтения необработанных байтов?В настоящее время у меня есть:

    socket = new Windows.Networking.Sockets.StreamSocket();
    Windows.Networking.HostName serverHost = new Windows.Networking.HostName(host);
    await socket.ConnectAsync(serverHost, port);
    socket = new Windows.Networking.Sockets.StreamSocket();
    //the server hostname that we will be establishing a connection to.
    Windows.Networking.HostName serverHost = new Windows.Networking.HostName(host);
    await socket.ConnectAsync(serverHost, port);
    Stream streamIn = socket.InputStream.AsStreamForRead();

Не могли бы вы предложить мне, какой метод я должен использовать для чтения потока байтов вместо AsStreamForRead ()?

Большое спасибо !!

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...