获取下一个打开TCP端口在Windows中

怎样才能在windows上获得下一个打开的tcp端口
我search了networking,我碰到了用Qt写的TcpPortsGatherer。
唯一的问题是,它不能在我目前的Qt版本或它应该被用作插件
所以我正在寻找一种使用TcpPortsGatherer类的方法
或者只是使用本地Windows库(如果有的话)

更新:

我已经使用塞巴斯蒂安的方法如下,将发现的端口绑定到我运行的外部二进制文件,但它始终将端口1025分配给可执行文件,我该如何解决这个问题?

QTcpSocket *socket = new QTcpSocket(); qint16 port = 1025; while(!socket->bind(port, QAbstractSocket::DontShareAddress)) port++; socket->close(); socket->deleteLater(); 

你可以尝试使用QTcpSocket::bind() 。 如果端口打开成功,它将返回一个bool(true)。

 QTcpSocket *socket = new QTcpSocket(); qint16 port = 1025; while(!socket->bind(port, QAbstractSocket::DontShareAddress)) { port++; } 

套接字现在绑定到端口。

只需指定端口零和绑定。 系统会给你下一个可用的端口。 不需要循环。