Проблемы с проверкой соединения виртуального сервера (vps) с qt

Я хочу ввести в программу ip, имя пользователя и пароль виртуального сервера (vps), и программа проверяет правильность имени пользователя и пароля или нет.

Я использовал следующий код

void MainWindow::test()
{
    QLoggingCategory::setFilterRules("qt.network.ssl.warning=false");
    QNetworkAccessManager* manager = new QNetworkAccessManager(this);
    QUrl url;
    url.setHost("xx.xxx.xx.xx");
    url.setPort(3389);
    url.setUserName("administrator");
    url.setPassword("xxxx");
    manager->get(QNetworkRequest(url));
    connect(manager,&QNetworkAccessManager::finished, this, &MainWindow::connFinished);
}

выход:

QNetworkReply::NetworkError(ProtocolUnknownError)

пожалуйста, направь меня

1 ответ

Если вы хотите знать, если хост находится в сети: я бы предложил вам использовать connectToHost из класса QAbstractSocket. RDP-протокол основан на TCP/UDP согласно Википедии и прослушивает 3389 (что вы сказали в комментариях).

Если соединение по TCP 3389 успешно, хост подключен.

Если вы хотите проверить, подключен ли хост и работает ли аутентификация, вы должны внедрить свою собственную RDP-библиотеку, такую ​​как FreeRDP, потому что Qt не предоставляет никаких основных модулей для RDP.

Другие вопросы по тегам