最近在使用QT tcpclient, 发现连接tcpserver失败,错误信息为:the proxy type is invalid for this operation。
2年前用QT写过一版网络调试助手拿过来重新编译,同样出现该错误。这就奇怪了,唯一的区别就是版本问题了,之前使用Qt5.9.6,现在使用Qt5.14.2。
网上搜罗了一番,问题得到解决:原来调用connectToHost时会先检查代理情况。Qt 程序默认使用系统的代理设置会导致这个问题导致,只要关闭系统的代理设置就可以解决这个问题:
(1)添加头文件:#include <QNetworkProxy>
(2)添加:QNetworkProxyFactory::setUseSystemConfiguration(false); // 静态函数
或者添加: tcpSocket->setProxy(QNetworkProxy::NoProxy);
参考链接:https://www.cnblogs.com/cppskill/p/11730452.html