|
Dans ce tutoriel , nous allons voir comment
écrire une petite application client serveur très simple.
Elle consistera en 2 programmes, le client
et le serveur , qui vont communiquer entre eux grâce à un
socket client et un socket serveur.
Comme vous allez le voir, la mise en œuvre
de cela à l’aide de C++builder6 simplifie grandement les choses.
Le serveur
Notre petit serveur sera constitué
d’une fiche qui contiendra un composant socket serveur. Ce dernier sera
à l’écoute d’un client et se chargera de recevoir les messages
du client et de les afficher , puis d’envoyer au client une réponse
en retour.
Voici la fiche correspondant à notre
serveur :

Configuration du composant socket serveur :
Pour les propriétés du composant
, nous mettrons la propriété active à false
, car le socket sera activé lors de l’activation de fiche.
La propriété port sera arbitrairement
fixée à 1200 , mais ici,tout autre valeur conviendra. Ce
qui importe, c’est que le client et le serveur aient le même port.
Nous laisserons les autres valeurs à leur valeurs par défaut.
Les méthodes du serveur :
ServerSocket1ClientConnect
Cet événement est activé
lorsqu’un client se connecte au serveur. Nous écrirons un message
dans la barre d’état pour signifié la connection.
ServerSocket1ClientRead
Cet événement est déclenché
à la lecture du client. Nous allons effectuer alors la réception
du message envoyé par le client , ici une chaîne de texte,
en invoquant la méthode ReceiveText() du socket.
Nous ajouterons alors ce texte au composant
memo de la fiche 1 , puis nous renverrons au client un texte lui signifiant
la réception , l’adresse et le nom d’hôte du serveur.
ServerSocket1ClientDisconnect
Lorsque le client interromps la liaison ,
nous enverrons un message de fin de connection dans la barre d’état
de notre fiche.
Les source du serveur :
Le client
Notre client sera simplement constitué d'une fiche
avec un composant Tedit dans lequel nous saisirons un petit texte qui
sera envoyé au serveur grâce à notre composant socket
client.

Les méthodes du client :
ClientSocket1Error
Lorsque nous connectons notre client, si aucun serveur n'est
actif, il y a une erreur, aussi , nous intercepterons les erreurs pour
envoyer proprement à l'utilisateur un message l'avertissant que
la communication ne peux pas s'établir et ensuite, nous quitterons
l'application.
Button1Click
Lorque nous clickons sur le bouton envoi, le texte saisi
est envoyé au serveur.
ClientSocket1Read
Après avoir envoyé notre message, nous lisons
la réponse envoyé par le serveur afin de l'afficher dans
la ligne de message d'état.
Le source du client:
Conclusion:
Cette application est très simple, mais elle nous
permet déjà d'apprendre à utiliser les composants
socket et aussi de comprendre la base du fonctionnement client serveur.
Le projet et les sources du serveur: Serveur.zip
Le projet et les sources du client: CLient.zip
|