2017-03-13 5 views
0

Ich versuche ein Uint-Array an einen Server zu senden. Aber ich weiß nicht, wie ich es realisieren soll. Die uint[] sieht wie folgt aus:Uint über TCP an Server senden C#

[0,0,0,0, 255,255,255, 255,255,255] 

Ich bin mit dem stream.Write Methode funktioniert, aber diese Methode funktioniert nur mit einem byte[] wie kann ich eine uint8[] einen byte[] konvertieren oder gibt es eine Möglichkeit, einen uint8[] zu senden über tcp? Das Problem ist, dass ich weder auf den Quellcode des Servers zugreifen noch ihn ändern kann.

EDIT: Das ist, was ich auf die Chrome-Konsole tippen bin und es funktioniert:

ws = new WebSocket("ws://localhost:7890") 

die WebSocket-Verbindung und den Rest zu öffnen: enter image description here

Vielen Dank

+0

Uint8 ist im Grunde genommen nur ein Byte, also sind die Werte gleich, also benutze einfach Byte und sende das an den Server. –

+0

versuchte es, aber ich bekomme keine Antwort. Wenn ich beispielsweise eine Websocket-Verbindung über die Konsole in Chrome öffne und diese Pakete sende, erhalte ich eine Antwort von meinem FadeCandy-Controller. Aber wenn ich dieselben Pakete über den stream.Write sende, bekomme ich keine Antwort. – LongDong1234

+0

Wenn es ein Byte-Array ist, wissen Sie, ob es als Big Endian oder Little Endian gesendet werden muss. Sie können versuchen, das Array umzukehren, um zu sehen, ob das funktioniert. –

Antwort

0

Sie könnten versuchen, das Array zu konvertieren. Etwas wie: var byteArray = uintArray.Select (Element => (Byte) Element). ToArray();

Verwandte Themen