[TCP_Socket] connectToHost() ne fonctionne pas ?
Bonjour à tous, c'est la première fois de ma vie que je poste sur un forum, j'espère que je le fais correctement.
Voilà mon problème :
Je souhaite établir une connexion entre 2 PC (reliés par un Ethernet pour l'instant mais par Wifi plus tard) pour envoyer des données (je m'en occuperai plus tard).
Je réussis à allumer le serveur sous Delphi d'un côté, mais mon client, et c'est là que je rame, est sous Qt 5.12.0 (je travaille sur Ubuntu) et la commande "return socket->waitForConnected()" ne me renvoi rien.
J'ai bien conscience que c'est parce que je ne parviens pas à me connecter au serveur (si je met un temps à l'intérieur il me renvoi toujours False), mais je ne comprend pas pourquoi, alors que ça a l'air si simple pour tout le monde sur les différents forum FR/EN que j'ai épluché.
Je vous met les programmes que j'utilise :
test1.pro
Code:
1 2 3 4 5 6 7 8
|
QT += network
QT -= gui
QT += widgets
HEADERS += client.h
SOURCES += main.cpp \
client.cpp |
client.h
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28
|
#ifndef CLIENT_H
#define CLIENT_H
#include <QtCore>
#include <QtNetwork>
class Client : public QObject
{
Q_OBJECT
public:
explicit Client(QObject *parent = 0);
public slots:
bool connectToHost(QString host);
private:
QTcpSocket *socket;
};
#endif // CLIENT_H |
client.cpp
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
|
#include "client.h"
//static inline QByteArray IntToArray(qint32 source);
Client::Client(QObject *parent) : QObject(parent)
{
socket = new QTcpSocket(this);
}
bool Client::connectToHost(QString host)
{
socket->connectToHost("192.168.0.2", 10000);
return socket->waitForConnected();
} |
main.cpp
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13
|
#include <QApplication>
#include "client.h"
int main(int argc, char *argv[])
{
QApplication app(argc, argv);
QApplication::setApplicationDisplayName(Client::tr("Fortune Client"));
Client client;
// client.show();
return app.exec();
} |
C'est un code très simple mais pourtant qui ne me permet pas de me connecter à mon serveur.
Mon serveur est sous window, et je vois, dans le moniteur de ressource que mon port 10000 est bien à l'écoute.
J'ai cherché du coté des ports sous linux (que je ne maitrîse pas vraiment), j'ai testé de nombreux programmes, mais je pense avoir raté quelque chose, si quelqu'un pouvait m'aiguiller sur une quelconque piste je lui en serais vraiment très reconnaissant.