Bonjour , je voudrais envoyer un fichier d'un client à un serveur en utilisant la progrmmation socket par contre quand je fais le transfert le fichier recu est vide .
Voici mes fonctions que j'utilise pour cela coté client :
Je crois que tu te compliques la vie en comptant le nombre de mots (le while() ligne 36 n'est d'ailleurs pas correct).
À moins d'avoir une bonne raison pour envoyer le fichier mot par mot (et je n'en vois pas), on envoie le fichier au complet et le receveur le maltraitera ensuite comme il le souhaite. Ça permet également d'envoyer des fichiers de tous types: image, musique etc....
Il est convenu que l'expéditeur envoie toujours N octets, sauf lors du dernier envoi. En simplifiant, ça donne quelque chose dans ce gout-là
Expédition
----------
faire
lu=lire N octets du fichier
envoyer lu octets
tant que lu == N
Réception
---------
faire
reçu=recevoir octets
écrire reçu octets dans le fichier
tant que reçu == N
Évidemment, on fait ici joujou avec fread() et fwrite(), plus avec getc() et fscanf() / fprintf()
- Edité par edgarjacobs 16 décembre 2018 à 14:25:36
On écrit "j'ai tort", pas "tord" qui est le verbe "tordre" à la 3ème personne de l'indicatif présent
Cela marche quand j'execute ces deux fonctions seules (j'ai pas mis de boucle dans la fonction recevoir pour tester) par contre des que je rajoute la fonction Chat() cela semble plus marcher
Oublie ton chat et compagnie. Fais un programme de base pour tester si oui on non tu es capable de transférer un fichier d'une machine à l'autre: le serveur attend une connexion, dès que le client se connecte, le serveur envoie un fichier puis termine la connexion. Rien que ça, tout simplement (et oui, développer en C prend du temps).
On écrit "j'ai tort", pas "tord" qui est le verbe "tordre" à la 3ème personne de l'indicatif présent
Oublie ton chat et compagnie. Fais un programme de base pour tester si oui on non tu es capable de transférer un fichier d'une machine à l'autre: le serveur attend une connexion, dès que le client se connecte, le serveur envoie un fichier puis termine la connexion. Rien que ça, tout simplement (et oui, développer en C prend du temps).
Justement c'est que j'arrive bien à transferer un fichier mais des que je rajoute la fonction pour le chat(). L'envoie du fichier ne marche pas le fichier se crée mais il est vide.
Envoie des fichiers (Programmation Socket)
× Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
× Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
On écrit "j'ai tort", pas "tord" qui est le verbe "tordre" à la 3ème personne de l'indicatif présent
On écrit "j'ai tort", pas "tord" qui est le verbe "tordre" à la 3ème personne de l'indicatif présent
On écrit "j'ai tort", pas "tord" qui est le verbe "tordre" à la 3ème personne de l'indicatif présent