1

我在 Qt5.9 中使用注册表节点构建示例 simpleswitch。它工作正常,但是当我将定义QRemoteObjectRegistryHostQRemoteObjectHost中的 QUrl ("local.registry")QUrl("local.replica")替换为QUrl("tcp://localhost:9999")"tcp://127.0 .0.1:9999",或将当前主机地址粘贴到defniton ...运行应用程序后出现错误...

qt.remoteobjects:侦听 URL 失败:QUrl("tcp://127.0.0.1:9999")

qt.remoteobjects:QAbstractSocket::AddressInUseError

qt.remoteobjects:无法为客户端创建 ClientIoDevice。提供的网址/方案无效?网址(“”)

4

2 回答 2

2

有效值,使用代替QUrl("local.registry")

QUrl("tcp://192.168.0.3:-1");

有效值,使用代替QUrl("local.replica")

QUrl("tcp://192.168.0.3:9999");

IP 地址192.168.0.3 - 例如,在您的情况下,IP 地址可以包含其他数字(它对我们办公室网络中的我的工作站有效)。

于 2017-11-08T10:40:38.710 回答
0

如果 Qt 指示“地址正在使用中”,那么这很可能是问题的根源,实际上是在使用 IP:PORT 处的套接字。你可以检查你的开发环境,看看你是否有多个进程在运行同一个应用程序——这通常是这种情况,它会导致地址空间的冲突。我们一直在我们的环境中看到这个错误,根本原因很简单:“地址正在使用中”。

于 2018-12-10T23:31:32.633 回答