trionetcom.cpp:259:40: error: no member named 'TcpProxy' in 'QNetworkProxy'
时间: 2023-07-29 22:10:51 浏览: 121
fatal error: boostdesc_bgm.i: No such file or directory补充文件
抱歉,这是因为QNetworkProxy中没有名为'TcpProxy'的成员。正确的成员是'ProxyType'。以下是修改后的代码:
```cpp
// 第一个上位机
#include <QtNetwork>
int main(int argc, char *argv[])
{
QCoreApplication a(argc, argv);
// 创建socket代理
QNetworkProxy proxy(QNetworkProxy::ProxyType::TcpProxy, "169.254.7.71", 10001);
QNetworkProxy::setApplicationProxy(proxy);
// 创建socket连接
QTcpSocket socket;
socket.connectToHost("169.254.7.71", 10001);
// 发送数据
QByteArray data("Hello from Upstream 1");
socket.write(data);
// 等待接收数据
socket.waitForReadyRead();
QByteArray response = socket.readAll();
qDebug() << response;
return a.exec();
}
```
```cpp
// 第二个上位机
#include <QtNetwork>
int main(int argc, char *argv[])
{
QCoreApplication a(argc, argv);
// 创建socket代理
QNetworkProxy proxy(QNetworkProxy::ProxyType::TcpProxy, "169.254.7.71", 10001);
QNetworkProxy::setApplicationProxy(proxy);
// 创建socket连接
QTcpSocket socket;
socket.connectToHost("169.254.7.71", 10001);
// 发送数据
QByteArray data("Hello from Upstream 2");
socket.write(data);
// 等待接收数据
socket.waitForReadyRead();
QByteArray response = socket.readAll();
qDebug() << response;
return a.exec();
}
```
请注意,这两个程序可以分别在两台不同的计算机上运行,只需要将IP地址改成下位机的实际IP地址即可。
阅读全文