C#winform中使用动态udp端口,在程序中怎么判断udp端口是否打开?

村部 2010-08-01 06:49:15
我想在C#winform中使用动态udp端口,在程序中怎么判断udp端口是否打开?或者说让程序先作判断某个端口已经被占用了,如果被占用就使用其它未被占用的端口?
...全文
410 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
wuyq11 2010-08-01
  • 打赏
  • 举报
回复
TcpClient tcp = new TcpClient();
tcp.Connect(hostName,port);
wuyq11 2010-08-01
  • 打赏
  • 举报
回复
Process p=new Process();
p.StartInfo=new ProcessStartInfo( "netstat ", "-a ");
Peter200694013 2010-08-01
  • 打赏
  • 举报
回复
or

利用.Net中Process类调用netstat命令来判断计算端口的使用情况:
Process p = new Process();
p.StartInfo = new ProcessStartInfo("netstat", "-a");
p.StartInfo.CreateNoWindow = true;
p.StartInfo.UseShellExecute = false;
p.StartInfo.WindowStyle = ProcessWindowStyle.Hidden;
p.StartInfo.RedirectStandardOutput = true;
p.Start();
string result = p.StandardOutput.ReadToEnd();
if (result.IndexOf(Environment.MachineName.ToLower() + ":4000") >= 0)
MessageBox.Show("4000端口被占用");
else
{
MessageBox.Show("ok");
}
Peter200694013 2010-08-01
  • 打赏
  • 举报
回复
假设他没有被占用。抛出了异常,你再试着打开别的端口吧。

110,538

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧