c# 报错“通常每个套接字地址(协议/网络地址/端口)只允许使用一次”是设置错误造成的,解决方法为:
1、win+r打开运行窗口,输洞物入cmd,按下回车键,进入命令行模式。
2、在命令号中输铅祥入命令并按下回车键: netstat -aon|findstr 5037。
3、找到LISTENING项,记录纳激液后面的3508,该进程占用了端口。
4、输入命令并回车:tasklist /fi "pid eq 3508"。
5、命令行中输入命令杀死进程: taskkill /pid 3508 /f ,显示如图所示已经终止该进程。
问题就出在udpClient,这个应该也是你实例化的一个new UdpClient(6899),
在if (ConnServer == null)
{
ConnServer = new UdpClient(6899);
}
之前一定要颤蔽先关闭掉udpClient.Close(); 可能是你之前的判断或者关闭的时候出了问题,没能正仔消确关闭,导致再次打开时会茄戚州报错
你的udp开了以后没有正确关掉,端口就被占用了,记得用完了释放
ConnServer.Close();
后面加一句
ConnServer=null;
ConnServer 变成null之前,你做个UdpClient的closed看看