QtRO — класс qremoteobjects — как можно соединить 2 и более удаленных пиров между TCP

Я собирал пример простого коммутатора с узлом реестра в Qt5.9. Это нормально работает, но когда я заменяю QUrl ( «local.registry») а также QUrl ( «local.replica») в определении QRemoteObjectRegistryHost а также QRemoteObjectHost в QUrl ( «TCP: // локальный: 9999») или же «ТСР: //127.0.0.1: 9999», или вставьте текущий адрес хоста в defniton … у меня ошибка после запуска приложения …

qt.remoteobjects: Ошибка прослушивания для URL: QUrl («tcp: //127.0.0.1: 9999»)

qt.remoteobjects: QAbstractSocket :: AddressInUseError

qt.remoteobjects: не удалось создать ClientIoDevice для клиента. Указан неверный URL / схема? QUrl ( «»)

1

Решение

Действительное значение, используйте вместо 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-адрес может содержать другие цифры.

1

Другие решения

Если Qt указывает, что «адрес используется», то это, вероятно, источник проблемы, буквально сокет в IP: PORT используется. Вы можете проверить свою среду разработки, чтобы увидеть, если у вас есть несколько процессов, работающих в одном приложении — это часто имеет место, и это приводит к коллизии адресных пространств. Мы постоянно видим эту ошибку в нашей среде, и основная причина заключается в том, что «адрес используется».

0

По вопросам рекламы [email protected]