Мое приложение в c # хочет соединиться с сторонним Tcp-сервером для отправки данных и получения ответных сообщений ... Синтаксис команд имеет тип данных UShort, ULONG, BYTE. Пример команды, которую необходимо отправить моему приложению:
USHORT 0xFFFF
USHORT 0x00D0
BYTE 0xDD
затем в приложении я отправляю данные как
TcpClient tcpClient = new TcpClient();
tcpClient.Connect("XX.XX.XX.XX",portnumber);
Networkstream ns=tcpClient.GetStream();
StreamWriter sw=new StreamWriter(ns);
sw.Write(0xFFFF);
sw.Write(0x00DD);
sw.Write(0x00);
// или отправляю им байты
sw.Write(0xFF);
sw.Write(0xFF);
sw.Write(0x00);
sw.Write(0xD0);
sw.Write(0x00);
sw.Write(0x00);
и я читаю входящие сообщения через сервер как
while (true)
{
byte[] buff=new byte[tcpClient.ReceiveBufferSize];
ns.Read(buff, 0, tcpClient.ReceiveBufferSize);
string dv= BitConverter.ToString(buff));
}
//returned data looks like FF-A2-00-23-00-02-00-00-00-00-00-00-D9-2E-20-2E-00-A0-04-00-AE-08
//yes i know this byte syntaxes but returning data is not that i look response for command that i sent..
но возвращаемые значения - это не то, что я ищу. Неправильно ли в моем коде отправка данных на сервер ??и любые рекомендации по чтению записи данных приветствуются ...