Application client/serveur en 37 lignes (testé sous windows xp pro)

Soyez le premier à donner votre avis sur cette source.

Snippet vu 7 787 fois - Téléchargée 35 fois

Contenu du snippet

C'est une application toute simple qui permet à 2 ordinateurs en réseau de chatter. N'y voyez rien d'exceptionnel dans cette appli, j'ai juste épuré un code récupéré à l'adresse suivante http://msdn.microsoft.com/library/en-us/vbcon98/html/vbconusingwinsockcontrol.asp

Source / Exemple :


Tout d'abord, il faut créer 2 projets dans 2 répertoires différents (les nommer Serveur et Client)

Pour le projet Serveur :
Créer un formulaire et le nommer frmServeur
Sur ce formulaire, déposer un contrôler Winsock1 (composant Microsoft Winsock Control 6.0 (SP4)) (MSWINSCK.OCX)
Créer 2 TextBox et les nommer respectivement txtEnvoyé et txtReçu
Ensuite copier/coller le code relatif au formulaire que voici :

Private Sub Form_Load()
    Winsock1.LocalPort = 1001
    Winsock1.Listen
End Sub

Private Sub Winsock1_ConnectionRequest(ByVal requestID As Long)
    If Winsock1.State <> sckClosed Then _
    Winsock1.Close
    Winsock1.Accept requestID
End Sub

Private Sub txtSendData_Change()
    Winsock1.SendData txtEnvoyé.Text
End Sub

Private Sub Winsock1_DataArrival(ByVal bytesTotal As Long)
    Dim strData As String
    Winsock1.GetData strData
    txtReçu.Text = strData
End Sub

Pour le projet Client :
Créer un formulaire et le nommer frmClient
Sur ce formulaire, déposer un contrôler Winsock1 (composant Microsoft Winsock Control 6.0 (SP4)) (MSWINSCK.OCX)
Créer 2 TextBox et les nommer les respectivement txtEnvoyé et txtReçu
Ensuite copier/coller le code relatif au formulaire que voici :

Private Sub Form_Load()
    tcpClient.RemoteHost = "nom de l'ordinateur serveur"
    tcpClient.RemotePort = 1001
    tcpClient.Connect

End Sub

Private Sub txtSend_Change()
    tcpClient.SendData txtEnvoyé.Text
End Sub

Private Sub tcpClient_DataArrival _
(ByVal bytesTotal As Long)
    Dim strData As String
    tcpClient.GetData strData
    txtReçu.Text = strData
End Sub

Conclusion :


Note : pour récupérer le "nom de l'ordinateur serveur", aller dans Démarrer/Paramètres/Panneau de configuration/Système/Nom de l'ordinateur
Le nom à récuperer est le nom complet de l'ordinateur.

Compiler ensuite les 2 projets
Copier l'exécutable Serveur sur l'ordinateur qui fera office de Serveur
Copier l'exécutable Client sur l'ordinateur qui fera office de Client
Lancer l'exécutable Serveur de l'ordinateur serveur et ensuite l'exécutable Client de l'ordinateur client (et toujours dans cet ordre)
Et voilà !
Il reste un petit bug à corriger lorsque l'on ferme l'appli mais à part ça, ça fonctionne à merveille et en direct s'il vous plait (je suis un nostalgique du talk sous unix)

Si vous avez le moindre soucis, n'hésitez pas à me contacter sur nicolasheurtevin@wanadoo.fr

A voir également

Ajouter un commentaire

Commentaires

Clecle0401
Messages postés
21
Date d'inscription
samedi 14 septembre 2002
Statut
Membre
Dernière intervention
10 juin 2009
-
Dernier message : 05/07/2008
Ton message : 20/01/2009

T'as pas l'impression d'être le moins utile dans tout ça ?
Déterrer des posts de plus de 6 mois nan mais... Pathétique!
Doggydog
Messages postés
2
Date d'inscription
mardi 11 juillet 2006
Statut
Membre
Dernière intervention
2 février 2009
-
ben oui clecle, montre nous ce que tu sais faire !
PCPT
Messages postés
13298
Date d'inscription
lundi 13 décembre 2004
Statut
Modérateur
Dernière intervention
3 février 2018
26 -
allons, un peu de courtoisie dans ce monde de brutes svp! ;)
Sh4rk_40
Messages postés
3
Date d'inscription
dimanche 31 octobre 2004
Statut
Membre
Dernière intervention
2 février 2008
-
c est comme toi clecle0401...tu sers a rien
Clecle0401
Messages postés
21
Date d'inscription
samedi 14 septembre 2002
Statut
Membre
Dernière intervention
10 juin 2009
-
Dans ce cas ce serait plutôt ta source qui est inutile !
Autant avoir fait un lien vers le MSDN... SANS INTERÊT

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.