如何在 Windows 上获取下一个打开的 tcp 端口
我在网上搜索了一下,发现了用 Qt 编写的 TcpPortsGatherer ...
唯一的问题是它在我当前的 Qt 版本中不可用,或者它应该用作插件
所以我正在寻找一种使用 TcpPortsGatherer Class 的方法
或者如果有的话就使用原生 Windows 库
更新:
我已经使用如下所示的塞巴斯蒂安方法将找到的端口绑定(bind)到我运行的外部二进制文件,但它总是将端口 1025 分配给可执行文件,我该如何解决这个问题?
QTcpSocket *socket = new QTcpSocket();
qint16 port = 1025;
while(!socket->bind(port, QAbstractSocket::DontShareAddress))
port++;
socket->close();
socket->deleteLater();
最佳答案
只需指定端口零并绑定(bind)。系统将为您提供下一个可用端口。无需循环。
关于c++ - 在 Windows 中获取下一个打开的 tcp 端口,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24778939/