Exemple de communication socket pour la réalisation d'un petit chat

Présentation
Ceci est un exemple simple de l'utilisation des composants TClientSocket et TServerSocket de C++ Builder pour réaliser une application de chat.

Les clients dialoguent uniquement avec le serveur, mais le serveur peut dialoguer avec qui il veut. Évidemment en implémentant son propre protocole d'échange de trames on peut très facilement faire dialoguer les clients entre eux mêmes, tout en passant par le serveur.

Comme je l'ai mentionné, ceci est un exemple d'utilisation des composants mentionnés ci-dessus, le but étant de réaliser un chat simple. Il est loin d'être un chat complet.


NB : Pour déclarer son identité auprès du serveur, un client doit envoyer la trame suivante au serveur (après s'être connecté) :

< Nom>MonAlias

Exemple : Si le client envoie < Nom>Neo41 alors le serveur rajoute dans sa liste de clients connectés l'alias "Neo41" et aura la possibilité de dialoguer avec ce client.
Détails
Catégories : Débutant
Avatar de Neo41
Membre averti
Voir tous les téléchargements de l'auteur
Licence : Autre
Date de mise en ligne : 15 novembre 2010




Avatar de OkamiRyuu OkamiRyuu - Membre du Club https://www.developpez.com
le 06/02/2012 à 13:39
Bonjour.

Et tout d'abord merci d'avoir mis votre code à disposition. Je suis en train de réaliser un serveur en C++ Borland (qui doit communiquer avec une application Qt). Seulement, mes données reçues étant érronées, j'ai voulu partir d'un client / serveur Borland pour faire des tests.

Or, quand je teste votre code, les trames ne sont pas bonnes entre votre client et votre serveur. Alors que j'écris "azerty" sur le client, je récupère "????'" sur le serveur

Auriez vous une idée de mon problème ? Je ne pense pas que votre code soit en cause, alors d'où cela peut il venir ?

Merci par avance pour votre aide.

Okami Ryuu
Developpez.com décline toute responsabilité quant à l'utilisation des différents éléments téléchargés.
Contacter le responsable de la rubrique C++