Programmation d'une application en mode client-serveur avec VB
Introduction
La programmation des sockets ne nécessite que l'objet Winsock. Le principe
consiste à ouvrir une socket dans l'application serveur, qui va attendre une
connexion et de s'y connecter avec une appli cliente. Lorsqu'une demande de
connexion arrive, on l'accepte par la méthode .Accept. A partir de là, on envoie
des données avec la méthode .Send, et on lit les données entrantes avec la méthode
Data_Arrival().
(Serveur) Ouverture d'une socket
- 'avant d'ouvrir une socket, vérifier qu'on n'utilise pas un port standard,
déjà réservé. Liste dispo dans C:\WINNT\system32\drivers\etc\services
- Socket.LocalPort = 1007
-
- 'TCP est le protocole par défaut
- Socket.Protocol = sckTCPProtocol
-
- Socket.Listen
(Client) Connexion à une socket
- Socket.RemoteHost = "192.168.0.1"
- Socket.RemotePort = 1007
- Socket.Protocol = sckTCPProtocol
- Socket.Connect
(Serveur) Acceptation demande de connexion
- Private Sub Socket_ConnectionRequest(ByVal requestID As Long)
- Socket.Accept requestID
- End Sub
(Client) Envoi de données au serveur
- Private Sub Text1_KeyUp(KeyCode As Integer, Shift As Integer)
- Socket.SendData Chr$(KeyCode)
- End Sub
(Serveur) Lecture données provenant du client
- Private Sub Socket_DataArrival(ByVal bytesTotal As Long)
- Dim sTemp As String
- Socket.GetData sTemp
- End Sub
(Client) Fermeture connexion
- Socket.Close
(Serveur) Fermeture socket
- Socket.Close