SERVEUR MULTI-CLIENT ET CLIENT DE CHAT EN TCP AVEC AUTHENTIFICATION

Sirocooo Messages postés 412 Date d'inscription mercredi 19 décembre 2001 Statut Membre Dernière intervention 7 avril 2008 - 23 déc. 2004 à 10:13
ScripteurPermanent Messages postés 18 Date d'inscription mardi 7 novembre 2000 Statut Membre Dernière intervention 9 avril 2007 - 23 juil. 2005 à 18:09
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/28341-serveur-multi-client-et-client-de-chat-en-tcp-avec-authentification

ScripteurPermanent Messages postés 18 Date d'inscription mardi 7 novembre 2000 Statut Membre Dernière intervention 9 avril 2007
23 juil. 2005 à 18:09
Bonjour,
Tout d'abord bravo pour ce programme, il est vraiment superbe, bon boulot ! ;-)
Mais j'ai une question annexe (vous allez trouver ça stupide mais sachez que je suis nouveau dans le vb6 en réseau): le programme marche-t-il sur internet aussi où il ne marche qu'en réseau local?

Merci d'avance pour la réponse ! :-)
Et désolé de poser des questions de Newbie ! :-p
RcrivelliNET Messages postés 41 Date d'inscription lundi 23 février 2004 Statut Membre Dernière intervention 12 août 2008
17 juil. 2005 à 00:34
Hello,
juste une petite réflection ... question propreté ... pour fermer la totalitée de test winsock un a un, au lieu de le décharger par rapport a ta liste de user ... tu ne ferrait pas mieux de le décharger par rapport au nombre de socket existant comme cela

r = wskTCP.UBound
For Index = 0 To r
...
spejosse Messages postés 28 Date d'inscription mardi 27 janvier 2004 Statut Membre Dernière intervention 4 octobre 2005
7 juil. 2005 à 11:59
Merci a Arkalis pour ce tres bon code!
j'ai fais aussi quelques modifs mais la je bloque, apparement avec TransfertData si index = 0 ca envoye a ts les clients! j'ai beau essayé de changer l'index ca bug.
Je voudrai pouvoir séléctionner le client et lui envoyer un mess a lui seul.
Est ce que quelqu'un a une idée sur le code a employer??

Merci et bonne continuation!
cs_dhalsim Messages postés 1 Date d'inscription jeudi 25 avril 2002 Statut Membre Dernière intervention 3 juillet 2005
3 juil. 2005 à 19:19
j'ai beaucoup appris de cette source, je l'ai bien analyser et j'ai recoder un client et un serveur de A à Z en me basant dessus
j'ai apporter pas mal de modifications (whisper une personne, faire un wizz comme sur msn pour réveiller une personne...) et principalement sur la structure des "packets" en séparant les valeurs par un caractère spécial à l'émission et en utilisant la fonction split à la réception ; ce qui simplifie grandement le code et me permet de mieux les gérer sans avoir a faire appel a des mid, left, right, len et j'en passe :)

un grand merci a Arkalis :)
gregenight Messages postés 1 Date d'inscription mardi 1 février 2005 Statut Membre Dernière intervention 16 mai 2005
16 mai 2005 à 00:26
SVP pouvez-vous me dire comment faut-il faire pour télécharger l'exemple ?
Je vous remercie d'avance.
Cordialement.
Sirocooo Messages postés 412 Date d'inscription mercredi 19 décembre 2001 Statut Membre Dernière intervention 7 avril 2008 1
23 déc. 2004 à 13:25
cs_Arkalis Messages postés 29 Date d'inscription lundi 25 octobre 2004 Statut Membre Dernière intervention 1 décembre 2008
23 déc. 2004 à 10:50
Salut Sirocooo, pour la fenetre du A Propos, en fait il faut juste clicker sur la Form pour la fenetre, comme il n'y a pas de bouton fermé, j'ai juste fait un énévenement dessus lors d'un click

Et pour mettre le programme dans le SystemTray, bah je sais pas réellement comment faire, vu qu'en ce moment, tout ce qu'on a appris au centre de formation c'est creer des menus, utiliser des popus menu, gerer des erreurs, et utiliser les listBox....

Donc si quelqu'un a un moyen de m'expliquer comment mettre une icone en tray ça serait cool :)

J'ai mis précédemment sur une ancienne version une instruction pour faire clignoter la fenetre ou l'icone dans la barre des taches lorsqu'une personne parle sur le chat, le code était très simple :
Private Sub rtfChat_Change()

   frmxIRCClient.Show

End Sub

Et marchait très bien jusqu'à ce que je constate un plantage du programme, lorsque je me trouve sur une fenetre modal, comme le A propos ou sur le serveur lorsque je gere les membres alors qu'une personne parle sur le chat, m'indiquant que je ne peux pas afficher une fenetre avec la methode show lorsqu'il y a deja une fenetre modal ouverte, alors j'ai modifié le code par :
Private Sub rtfChat_Change()

   If frmOptions.Visible False And frmSplash.Visible False Then frmxIRCClient.Show

End Sub


Sachant que ces feuilles sont ouvertes par la méthode Show Modal

Ca a bien corrigé le probleme, mais un autre hic est apparu :
C'est que je ne pouvais plus du tout fermer le programme, il restait résident en mémoire.

Apparemment lors de la fermeture du programme, il y a l'événement rtfChat_Change() qui se produit, et donc fait réafficher la fenetre....
Du coup j'ai supprimé la fonction de faire clignoter la fenetre quand on recoit un message temporairement pour pas faire crasher surtout le serveur, le temps de trouver une solution...
PS je préfaire éviter l'utilisation de l'instruction END dans mes programme et les faire arrêter proprement par des déchargement de feuilles

Merci sinon d'avoir donné ton opinion ça fait plaisir :)
J'ai vu la méthode Dytryl, je vais étudier son code et voir comment l'implémenter dans mon programme pour que ce soit sympathique ;)
Sirocooo Messages postés 412 Date d'inscription mercredi 19 décembre 2001 Statut Membre Dernière intervention 7 avril 2008 1
23 déc. 2004 à 10:13
Génial 10/10
Petit problème : quand on clique sur le bouton information
la fenêtre A propos ne se ferme jamais.

Suggestion : il faudrait pouvoir réduire la fenêtre dans le tray
et l'afficher quand un nouveau message est posté.
Tu pourrais utiliser la méthode à Dytryh Evryl :
http://www.vbfrance.com/code.aspx?ID=26171

Bravo encore
Rejoignez-nous