我已经看到很少有关于我的问题的帖子,但是,我似乎仍然无法解决问题,而且回复还不够。所以这是任务:我有 2 台 PC。一台必须传输 100 个 udp 数据包,带有一个简单的测试数据,另一台机器必须读取数据报。我的代码如下:
服务器:
m_socket.udp = new QUdpSocket(this);
if (m_socket.udp->bind(QHostAddress("192.168.32.154"), 1234)) {
m_socket.udp->connectToHost(QHostAddress("192.168.32.154"), 1234);
m_socket.udp->waitForConnected();
}
connect(m_socket.udp, SIGNAL(connected()),
this, SLOT(handleConnection()));
connect(m_socket.udp, SIGNAL(readyRead()),
this, SLOT(readyReadUdp()));
所以...首先 - 绑定到机器 1 的 IP 失败。我不能指定它的 IP。
客户端很简单:
p_socket = new QUdpSocket(this);
p_socket->connectToHost(QHostAddress("192.168.32.94"), 1234);
connect(p_socket, SIGNAL(connected()), this, SLOT(writeDgram()));
....
void writeDgram() {
p_socket->write(QByteArray("test"));
}
因此,在wireshark 中查看的客户端代码会出现在我的服务器机器上。但是我的服务器 Qt 代码让我失望了。这里有什么帮助吗?