TcpClient tcpClient;
//UDP
Udp udpClient;
//定义一个数据处理的委托
UdpRxCallBackDelegate d1;
public Form1()
{
InitializeComponent();
d1 = new UdpRxCallBackDelegate(UdpRxCallBackFunc);
udpClient = new Udp(d1);
}
private void UdpRxCallBackFunc(UdpDataStruct info)
{
Invoke((EventHandler)(delegate
{
//接收UDP数据处理
}));
}
private readonly int UdpMinPort = 5000;
private readonly int UdpMaxPort = 55000;
private int udpSocketCreatFlag = 0;
private readonly string locateIP = "192.168.0.100";
private readonly string remoteIp = "192.168.0.200";
private readonly int remotePort = 6000;
private int GetUpdOnePort()
{
int freeport = udpClient.FindNextAvailableUDPPort(UdpMinPort, UdpMaxPort);
if (freeport == 0)
{
MessageBox.Show("无可用UDP端口", "提示");
}
return freeport;
}
private void UdpSockIfNeedCreat(string locateIP)
{
int localport;
if (udpSocketCreatFlag == 0)
{
localport = GetUpdOnePort();
if (localport > 0)
{
udpClient.SockCreat(locateIP, localport);
udpSocketCreatFlag = 1;
}
}
}
private void buttonUdpSend_Click(object sender, EventArgs e)
{
UdpSockIfNeedCreat(locateIP);
//UDP发送
udpClient.Send(remoteIp, remotePort, buf, length);
}
C# 53. 调用dll库Ymodem操作(UDP)
最新推荐文章于 2024-06-13 19:10:55 发布
![](https://img-home.csdnimg.cn/images/20240711042549.png)