怎么判断本机的一个端口是否被占用?(50分)

  • 主题发起人 主题发起人 snowcattt
  • 开始时间 开始时间
S

snowcattt

Unregistered / Unconfirmed
GUEST, unregistred user!
想在设定udp端口前判断一下这个端口是否被占用
怎么做的?

谢谢
 
直接绑定,如未出错就可用。可以用Try ... Except ...
 
可是,比如用delphi的NMUDP这个控键,程序占用了6767这个端口,
在同一台机子上运行两次这个程序,
第二次运行时它并不会因为有第一个程序在占用这个端口而报错。
 
没有试过
 
最简单的方法是放一个TServerSocket,把他的端口指定为你需要检测的端口,如果发生异常那么
端口就已经被使用,如果没有触发异常,端口就没有被使用
 
用GetTcpTable和GetUdpTable
 
不知道UDP和COM是否一样,可以用API
CreateFile(..) 来试图初始化,失败则表示被占,当然也要判断是否有该断口存在,在注册表里
有断口信息,自己找一下
 
接受答案了.
 
后退
顶部