Mini chat client-serveur (udp) avec transfert de fcihier (tcp)

Soyez le premier à donner votre avis sur cette source.

Vue 16 500 fois - Téléchargée 1 908 fois

Description

Bonjour a vous,
Je veux realiser un chat client-serveur avec transfert de fichier. J'ai plusieurs questions

1) Si le serveur n'envoi pas de reponse a la reception du paquet client sa bug.
2)je l'ai teste avec un pote sur le reseau internet connection ok! mais probleme les paquets que recoit le serveur sont bizarre
mauvais pseudo et pas de texte help me?.

Pour la terminaison client et serveur c'est pas au point ca je me debroullerais. Mais je voudrais des avis sur mon programme et px etre des solutions.
@+ et merci

ps la source est sur la boucle locale.

Codes Sources

A voir également

Ajouter un commentaire

Commentaires

cs_max12
Messages postés
1491
Date d'inscription
dimanche 19 novembre 2000
Statut
Modérateur
Dernière intervention
7 juillet 2014
-
Si sa ne fonctionne pas c'est pas vraiment la peine de le déposer :S Mais n'oublie pas que si tu envoie un packet il peut très bien recevoir en deux packets de l'autre côté surtout si tu n'est pas en LAN. Je te dis ça car c'est dans 90% des cas la cause du problème, ce que beaucoup ne savent pas.
CAVAVIN128
Messages postés
4
Date d'inscription
samedi 20 mai 2006
Statut
Membre
Dernière intervention
28 mai 2008
-
C'est pas qu'il ne fonctionne pas du tout en LAN il marche nickel. Si le paquet arrive en plusieurs la solution ne serait elle pas de tester la taille que l'on rençoit afin d'aviser et de continuer la recption j'usqua avoir la totalite du paquet?
Avis au pro
cs_max12
Messages postés
1491
Date d'inscription
dimanche 19 novembre 2000
Statut
Modérateur
Dernière intervention
7 juillet 2014
-
Non tu te complique pas la vie, tu met un caractère à la fin du packet qui indique la fin du message, ensuite tu créer un buffer de l'autre côté qui accumule les données entrantes et les traitent au fur et à mesure. Si jamais une donnée est incomplète il ne fera rien, il la laisse dans le buffer et attend. Une fois la donné complèté (détecter le caractère de fin de trame) il la traite et l'enlève du buffer et continu ainsi de suite ... sans fin.
CAVAVIN128
Messages postés
4
Date d'inscription
samedi 20 mai 2006
Statut
Membre
Dernière intervention
28 mai 2008
-
Je sais pas si tu as regarde mon programme mais je passe mon message sous forme d'une structure.Penses tu que je dois revoir totalement mon appli? Pour detecter la fin dans une structure ca va etre cho?Pour le transfert ce que tu dis est vraiment pas bete.
cs_max12
Messages postés
1491
Date d'inscription
dimanche 19 novembre 2000
Statut
Modérateur
Dernière intervention
7 juillet 2014
-
Ue structure c'est possible mais je ne te le conseil pas car tu devra envoyer des packets à tailles fixes. Place plutot simplement le caractère changement de ligne comme fin et sa devrait bien aller pour le traitement. http://www.cppfrance.com/codes/SERVEUR-MULTITHREAD-SOUS-LINUX-WINDOWS-MYSQL-VCPLUSPLUS-DEVCPLUSPLUS_40044.aspx

Dans mon code il y a une fonction assez simple a comprendre qui s'occupe de faire ça. Aussi concernant les structures tu risques d'avoir des problèmes avec les machines qui traitent en big endian/little endian (la dessus je dis peut-être une connerie, si quelqu'un veut confirmer/infirmer).

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.