У меня есть две программы, настроенные для имитации двух машин, которые будут общаться с использованием UDP (я знаю, что TCP звучит лучше в этой ситуации, но производитель одной из машин сделал это так, что связь доступна только с использованием UDP) < /p>
Рабочий отток похож на это: < /p>
В начале
Код: Выделить всё
udpClient = new UdpClient();
serverEP = new IPEndPoint(IPAddress.Parse(ip), port);
udpClient.Connect(serverEP);
a отправляет пакет в B: либо {81,00} , {85,00} или {90,00,22} . Когда B получает, он проходит через случай Switch и отвечает с помощью {81,00,00,00} , {85,00,00,00} , {90,00,00,00} соответственно, или {99,99,99} , если полученная команда, полученная команда, не известна. «Начальное соединение» , которое должно получить {99,99,99} в результате, поскольку это не один из примеров 3 байта, который я объяснил. Я забыл включить обращение udpclient.receive () здесь, чтобы получить ответ {99,99,99} .
После этого я начал отправлять {81,00} и я получил (99,99,99} как ответ. Показан {81,00,00,00} . Полученные ответы снова соответствуют.>
Подробнее здесь:
https://stackoverflow.com/questions/797 ... ike-format