Mon chat ne peut pas recevoir des données
djun123
Messages postés
5
Date d'inscription
Statut
Membre
Dernière intervention
-
djun123 Messages postés 5 Date d'inscription Statut Membre Dernière intervention -
djun123 Messages postés 5 Date d'inscription Statut Membre Dernière intervention -
Bonjour,
Je suis un débutant en c++. J'aimerais un jour à programmer des logiciels. Maintenant, je suis en train de faire mon premier chat. Cela veut dire que je dois travailler à partir du réseau. Mais, mon programme n'arrive pas à recevoir des données. Quelqu'un peut-il m'aider?
Code pour recevoir des données :
Code pour envoyer des données :
EDIT: Spécification du langage dans la coloration syntaxique.
Je suis un débutant en c++. J'aimerais un jour à programmer des logiciels. Maintenant, je suis en train de faire mon premier chat. Cela veut dire que je dois travailler à partir du réseau. Mais, mon programme n'arrive pas à recevoir des données. Quelqu'un peut-il m'aider?
Code pour recevoir des données :
void FenClient::donneesRecues() { qint8 tailleMsg(0); QDataStream in(socket); if(socket->tailleMessage()==0) { if(socket->bytesAvailable()<(int)sizeof(quint16)) { QMessageBox::information(this,"Test du programme","byte valide pour le client dans le serveur : "+QString::number(socket->bytesAvailable())); QMessageBox::information(this,"Test du programme","quint16 dans le serveur : "+QString::number(sizeof(quint16))); return; } in >> tailleMsg; socket->setTailleMessage(tailleMsg); } if(socket->bytesAvailable() < socket->tailleMessage()) { QMessageBox::information(this,"Test du programme","taille du message du client dans le serveur : "+QString::number(socket->tailleMessage())); return; } QString messageRecu; in >> messageRecu; chatbox->append(messageRecu); socket->setTailleMessage(0); tailleMsg = 0; }
Code pour envoyer des données :
void FenClient::on_boutonEnvoyer_clicked() { QByteArray paquet; QDataStream out(&paquet,QIODevice::WriteOnly); QString messageAEnvoyer; QString msgAEnvoyerEfface; if(message->font().bold()) { messageAEnvoyer += "<b>"; } if(message->font().italic()) { messageAEnvoyer += "<i>"; } messageAEnvoyer += "<font color='"+couleur.name()+"'><img src='"+socket->avatar()+tr("' width='25' height='25' border='1'> <b>")+pseudo->text()+tr("</b> : ")+message->text()+"</font>"; int boucle(0); while(boucle<messageAEnvoyer.size()) { if(messageAEnvoyer[boucle]==':'&&messageAEnvoyer[boucle+1]==')') { for(int i(boucle+2);i<messageAEnvoyer.size();i++) { msgAEnvoyerEfface += messageAEnvoyer[i]; } messageAEnvoyer.replace(boucle,boucle+1,"<img src='"+QCoreApplication::applicationDirPath()+"/smile_a.png' width='15' height='15'>"); messageAEnvoyer += msgAEnvoyerEfface; msgAEnvoyerEfface.clear(); } boucle++; } boucle = 0; while(boucle<messageAEnvoyer.size()) { if(messageAEnvoyer[boucle]==':'&&messageAEnvoyer[boucle+1]=='(') { for(int i(boucle+2);i<messageAEnvoyer.size();i++) { msgAEnvoyerEfface += messageAEnvoyer[i]; } messageAEnvoyer.replace(boucle,boucle+1,"<img src='"+QCoreApplication::applicationDirPath()+"/smile_b.png' width='15' height='15'>"); messageAEnvoyer += msgAEnvoyerEfface; msgAEnvoyerEfface.clear(); } boucle++; } boucle = 0; while(boucle<messageAEnvoyer.size()) { if(messageAEnvoyer[boucle]==':'&&messageAEnvoyer[boucle+1]=='D') { for(int i(boucle+2);i<messageAEnvoyer.size();i++) { msgAEnvoyerEfface += messageAEnvoyer[i]; } messageAEnvoyer.replace(boucle,boucle+1,"<img src='"+QCoreApplication::applicationDirPath()+"/smile_c.png' width='15' height='15'>"); messageAEnvoyer += msgAEnvoyerEfface; msgAEnvoyerEfface.clear(); } boucle++; } boucle = 0; if(message->font().bold()) { messageAEnvoyer += "</b>"; } if(message->font().italic()) { messageAEnvoyer += "</i>"; } out << (quint16) 0; out << messageAEnvoyer; out.device()->seek(0); out << (quint16) (paquet.size() - sizeof(quint16)); socket->write(paquet); message->clear(); message->setFocus(); message->setFont(QFont(message->font().family(),message->font().pointSize(),QFont::Normal)); couleur.setNamedColor("#000000"); QPalette palette; palette.setColor(QPalette::Text,couleur); message->setPalette(palette); }
EDIT: Spécification du langage dans la coloration syntaxique.
A voir également:
- Mon chat ne peut pas recevoir des données
- Coco chat - Accueil - Réseaux sociaux
- Remplaçant de Coco : quelles solutions pour tchater gratuitement en ligne ? - Accueil - Réseaux sociaux
- Fuite données maif - Guide
- Chat engine - Télécharger - Outils Internet
- Recevoir mms sans données mobiles free ✓ - Forum Free mobile
1 réponse
J'ai trouvé mon erreur. Merci.
Si vous êtes curieux à propos de comment j'ai résolu le problème, c'est grace à ces 3 sites :
http://www.qtfr.org/viewtopic.php?id=17503
https://www.jeuxvideo.com/forums/42-47-37783388-1-0-1-0-mon-chat-ne-peut-pas-recevoir-des-donnees.htm
https://forums.futura-sciences.com/programmation-langages-algorithmique/671856-chat-ne-recevoir-donnees.html
Si vous êtes curieux à propos de comment j'ai résolu le problème, c'est grace à ces 3 sites :
http://www.qtfr.org/viewtopic.php?id=17503
https://www.jeuxvideo.com/forums/42-47-37783388-1-0-1-0-mon-chat-ne-peut-pas-recevoir-des-donnees.htm
https://forums.futura-sciences.com/programmation-langages-algorithmique/671856-chat-ne-recevoir-donnees.html