gpt4 book ai didi

c# - Flowcode传输UDP但服务器读取失败

转载 作者:行者123 更新时间:2023-12-03 12:01:26 25 4
gpt4 key购买 nike

我正在使用 Flowcode 技术对微 Controller 16F877A 进行编程。

从流代码中,我将 3 个字节的 UDP 数据包发送到监听端口 23456 的服务器。

问题是服务器永远不会收到这些数据包。我使用wireshark进行跟踪,它能够检测到3个字节及其内容。

下面是我使用 c# 的服务器代码

const int port_number=23456;
TcpListener server=new TcpListener( IPAddress.Any ,port_number);
Socket soc;
NetworkStream s;
bool exit=false;
Thread mythread;

线程代码在这里
void method()
{
try
{
server.Start();
soc = server.AcceptSocket();
s = new NetworkStream(soc);
StreamReader sr = new StreamReader(s);
textBox1.Text += sr.ReadLine();
if(soc.Connected==true && exit==false)
method();
}
catch(Exception es)
{
Console.WriteLine("{0}",es.Message);
}

}

你认为我需要改变什么才能读取这 3 个字节并处理它们吗?

我真的很感谢你的帮助。

最佳答案

您正在使用 TcpListening,但您正在发送 UDP 数据包?试试 UDPClient 类:http://msdn.microsoft.com/en-us/library/system.net.sockets.udpclient.aspx

编辑
稍微详细说明一下。 TCP 客户端永远不会接收 UDP 数据包,因为 TCP 和 UDP 在套接字级别是两个独立的协议(protocol)。套接字将看到您正在监听 TCP 连接,它将接收 UDP 数据报,看不到任何监听器,然后将其丢弃。

关于c# - Flowcode传输UDP但服务器读取失败,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9183520/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com