1
Ich möchte Server von Client-Daten senden, wenn ich versuche zu serevr, Client zeigen unkown Fehler zu verbinden, und es werden keine Daten gesendetQTcpSocket unbekannter Fehler
seine Show nur leere Zeichenkette „“,
jede Hilfe wird geschätzt.
hier ist der Code:
// Client
Widget::Widget(QWidget *parent) :
QWidget(parent),
ui(new Ui::Widget)
{
ui->setupUi(this);
tcpSocket = new QTcpSocket(this);
connect(tcpSocket, SIGNAL(connected()), this, SLOT(connected()));
QHostAddress ha;
ha.setAddress("myIP");
tcpSocket->connectToHost(ha, 6401);
if(!tcpSocket->waitForConnected(3000)) {
ui->lineEdit->setText(tcpSocket->errorString());
}
else
ui->lineEdit->setText("connected");
}
void Widget::connected()
{
tcpSocket->write("hello this is client\r\n");
tcpSocket->flush();
tcpSocket->waitForBytesWritten(3000);
tcpSocket->close();
}
// server
Widget::Widget(QWidget *parent) :
QWidget(parent),
ui(new Ui::Widget)
{
ui->setupUi(this);
tcpServer = new QTcpServer(this);
connect(tcpServer, SIGNAL(newConnection()), this, SLOT(newConnection()));
if(!tcpServer->listen(QHostAddress::Any, 6401)) {
ui->lineEdit->setText("server not started");
}
else
ui->lineEdit->setText("server started");
}
void Widget::newConnection()
{
QTcpSocket *tcpSocket= tcpServer->nextPendingConnection();
qDebug() << tcpSocket->readAll();
tcpSocket->waitForReadyRead(3000);
tcpSocket->close();
}
Ich gehe davon aus ' "MyIP"' ist nur ein Platzhalter. Was passiert, wenn Sie stattdessen den lokalen Loopback "127.0.0.1" angeben? –
gleicher Fehler passieren, unbekannter Fehler und leere Zeichenfolge. –
Problem war in Ordnung, wenn die Daten gelesen wurden –