PRINCIPES DE COMMUNICATION CLIENT/SERVEUR

ICIoBRa Messages postés 368 Date d'inscription dimanche 24 juin 2001 Statut Membre Dernière intervention 7 décembre 2015 - 14 juin 2003 à 14:21
Galactus13 Messages postés 335 Date d'inscription lundi 29 septembre 2008 Statut Membre Dernière intervention 16 août 2023 - 15 oct. 2009 à 12:28
Cette discussion concerne un article du site. Pour la consulter dans son contexte d'origine, cliquez sur le lien ci-dessous.

https://codes-sources.commentcamarche.net/source/7402-principes-de-communication-client-serveur

Galactus13 Messages postés 335 Date d'inscription lundi 29 septembre 2008 Statut Membre Dernière intervention 16 août 2023 1
15 oct. 2009 à 12:28
même si j'ai pas tout saisi, je suis dur à la comprenette !
Sa marche en local, me reste plus qu'a tester en reseau avec mon serveur que je ne sais pas utiliser ! (la honte !)
Utilisateur anonyme
2 mai 2008 à 15:00
tu merit que 1/10 !!!!!!!!!!!!!!!!!( je blague si il ya mieu que 10 je veu le donne ) :)
media6 Messages postés 51 Date d'inscription mercredi 29 septembre 2004 Statut Membre Dernière intervention 7 juillet 2010
14 sept. 2006 à 21:03
Yes man !
Trop cool ton code pour un débutant comme moi en winsock...
Allez, pour la peine 10/10 !
Merci.
cs_Lewiss Messages postés 47 Date d'inscription jeudi 15 juillet 2004 Statut Membre Dernière intervention 22 septembre 2004
6 août 2004 à 19:58
Arecibo,

Ça fait un bail que je cherche une source de cette qualité à propos du contrôle WinSock...

Merci beaucoup à toi, Continue de déposer de telles sources.

Bravo ! (au cube)
cs_protect Messages postés 87 Date d'inscription lundi 19 mai 2003 Statut Membre Dernière intervention 15 mai 2011 6
16 juil. 2004 à 19:07
Pour ne pas dir pareil que les autres on vas dire que ton programme est trés bien fait avec des commentaires et un code simple=)

10/10
VBSpirit Messages postés 15 Date d'inscription mardi 11 juin 2002 Statut Membre Dernière intervention 15 juillet 2004
10 nov. 2003 à 18:10
C'est très bien ! Rare sont les codes qui sont bien expliqués.
Mais... eh oui il y a un mais, il aurait fallu que t'explique comment on fait pour connecter plusieurs clients à la fois...
Pour cela, il faut faire un tableau de Winsock où Winsock(0) est à l'écoute d'une demande de connexion, il suffit ensuite de créer un autre winsock (Load Winsock(Winsock.Count)) et de faire "Winsock(Winsock.UBound).Accept RequestID" pour connecter un client. Et cela permet plusieurs connexions...
Un serveur digne de ce nom doit être capable de gérer plusieurs connexions...

Bonne prog...
10/10
Arecibo Messages postés 124 Date d'inscription jeudi 13 juin 2002 Statut Membre Dernière intervention 30 juillet 2003
13 sept. 2003 à 09:25
Merci
daetips Messages postés 142 Date d'inscription jeudi 10 juillet 2003 Statut Membre Dernière intervention 10 novembre 2007
1 sept. 2003 à 21:05
franchement 10²²²²²²²²²/10 c superr
Arecibo Messages postés 124 Date d'inscription jeudi 13 juin 2002 Statut Membre Dernière intervention 30 juillet 2003
29 juin 2003 à 11:18
C'est vrai qu'on peut utiliser l'évènement Winsock_Close(), je l'ai fait dans le client et je sais pas pourquoi je ne l'ai pas fait dans le serveur.
Je modifie ça tout de suite.
cs_diksa222 Messages postés 45 Date d'inscription dimanche 9 mars 2003 Statut Membre Dernière intervention 6 mai 2004
28 juin 2003 à 21:46
je vien de decouvrir cette source ki ma l'air d'etre bien o point de vue lucrative mais g une petite correction a faire :)

pour le timer ki verifie tte les 100 millisecond si on est pas deconnecter et ki remet le server sur ecoute lors de deconnection et ben en fait moi je propose ca et je garantie que ca marche a tt les coup

Private Sub Winsock1_Close()
winsock1.close
winsock1.listen
end sub

essayer ca marche a coup sur, a mettre du coté server et c kan meme plus pratique kun timer non?
Arecibo Messages postés 124 Date d'inscription jeudi 13 juin 2002 Statut Membre Dernière intervention 30 juillet 2003
16 juin 2003 à 08:57
Eh bien, vas-y, amuse toi !
Madtrax Messages postés 5 Date d'inscription mardi 10 juin 2003 Statut Membre Dernière intervention 26 novembre 2008
15 juin 2003 à 20:41
>>Arecibo
Quand je disais de revenir a la commande Winsock1_ConnectionRequest
c'est en realiT tout simplement pour que :
-Quand le porgramme detecte ke la connection est fermé il reviens a la commande :
Winsock1_ConnectionRequest
si on y ajoute un Winsock1.Close
j'avais oublié de preciser.

Pour ce qui est de la commande de shell tu as (meme si tu n'as pas compris) fait exactement ce que je voulais faire ! Merci ;)
Bon maintenant je pourrais me debrouillais tout seul car j'avais du mal a modifier le truc du MBox a cause de la recherche du _


A Bientot je l'espere Arecibo !
@+ MadtraX
Arecibo Messages postés 124 Date d'inscription jeudi 13 juin 2002 Statut Membre Dernière intervention 30 juillet 2003
15 juin 2003 à 18:59
>>Madtrax
Voilà, j'ai updaté le ZiP et la capture.

Je pense que les problèmes que tu évoquais sont maintenant résolus.
Il n'y a plus besoin de fermer/ouvrir le serveur pour se connecter/déconnecter et j'ai mis une commande de plus à la disposition du serveur (lancement d'une application chez le client). Je sais pas si c'est ce que tu voulias dire par "commande de shell plus intéressante", en tout cas elle est assez limitée (à cause du Shell justement).
il faudrait faire attention de ne pas transformer cette source en Trojan... ;-)

Si tu retouches le programme envoie moi les sources à:
arecibo@netcourrier.com
Arecibo Messages postés 124 Date d'inscription jeudi 13 juin 2002 Statut Membre Dernière intervention 30 juillet 2003
15 juin 2003 à 17:39
Effectivement, c'est une erreur de ma part de ne pas avoir géré les deconnections. J'ai fait ce prog un peu vite et je n'ai pas pensé à tout.
Je devrais faire une mise à jour d'ici peu mais il faut que tu me précise quelques trucs :
- qu'est ce que tu veux dire par "faire en sorte ke le Timer revienne a la commande de Listen" (j'ai compris le cod emais ça non)
- qu'est ce que tu entends par une commande de shell plus intéressante ?
Madtrax Messages postés 5 Date d'inscription mardi 10 juin 2003 Statut Membre Dernière intervention 26 novembre 2008
15 juin 2003 à 15:46
Vous pouvez aussi faire en sorte ke le Timer revienne a la commande de Listen comme ceci :


Sub Time1_Timer()
If Winsock1.State = sckClosing Then
Winsock1_ConnectionRequest
End If
End Sub

Voila, si vous avez une remarque !
Ah oui aussi, j'aimerais que vous m'aidiez pour transformer le truc de reponse par MsgBox en envoyant avec le sen data MBox en le transformant par une Cammande de Shell qui serait plus interessant ;)


@+ MadtraX
Madtrax Messages postés 5 Date d'inscription mardi 10 juin 2003 Statut Membre Dernière intervention 26 novembre 2008
15 juin 2003 à 15:39
Re bon voila ce qui on telecharger ce programme on remarqué qu'il ai impossible de ce connecter/deconnecter sans fermer le server et le reouvrir.
Donc j'ai penser a ce petit Timer

Sub Time1_Timer()
If Winsock1.State = sckClosing Then
Winsock1.Close
Winsock1.Listen
End If
End Sub

Pour permettre au Server apré avoir perdu la connexion ou ke le client se soit deco de reprendre le Listen du Port ! et donc d'accepter les nouvelles connections eventuelles !


@+ MadtraX
Madtrax Messages postés 5 Date d'inscription mardi 10 juin 2003 Statut Membre Dernière intervention 26 novembre 2008
14 juin 2003 à 21:49
Merci merci merci !
Je cherchais ça depuis longtemps ! tu l'as fait et en plus très bien et très commenté ! Merci encore !
matrey Messages postés 399 Date d'inscription jeudi 31 janvier 2002 Statut Membre Dernière intervention 6 septembre 2004
14 juin 2003 à 17:40
c'est très bien fait ! bravo ! 10/10
ICIoBRa Messages postés 368 Date d'inscription dimanche 24 juin 2001 Statut Membre Dernière intervention 7 décembre 2015
14 juin 2003 à 14:21
Enfin une personne ki a fait ça proprement !
10/10
Rejoignez-nous