elanspeech
Messages postés43Date d'inscriptionmercredi 29 janvier 2003StatutMembreDernière intervention 3 septembre 2005
-
28 avril 2004 à 17:11
elanspeech
Messages postés43Date d'inscriptionmercredi 29 janvier 2003StatutMembreDernière intervention 3 septembre 2005
-
28 avril 2004 à 21:56
Bonjour,
J'ai fait un client/serveur, la communication se passe bien. cependant, je ne parviens pas a envoyer plusieurs fichiers a la suite avec la socket.
sur le client j'ai cree une fonction envoi de fichier :
void EnvoiFichier(char *file, SOCKET sock)
{
char *buffer; // buffer memoire, va recevoir données du serveur
int TailleFichier; // Taille Fichier
FILE *fich; // Pointeur fichier Destination
if ((buffer (char *)malloc(FICH_MAX_SIZE)) NULL)
Erreur("Reservation Memoire Impossible !"); // Hum...Raté Windows if ((fich fopen(file, "rb")) NULL)
Erreur("Ouverture Fichier Impossible !"); // Hum...Raté Windows
cout << file << endl;
TailleFichier = fread(buffer, 1, FICH_MAX_SIZE, fich); // Lecture dans FICHIER
if (send(sock, buffer, TailleFichier, 0) < 0)
Erreur("Erreur Transmission du Client !");
free(buffer); // Libère mémoire
fclose(fich); // Fermeture Fichier
}
et la fonction de reception sur le serveur :
void ReceptionFichier(char *file, SOCKET sock)
{
char *buffer; // buffer memoire, va contenir le fichier
int TailleFichier; // Taille Fichier
FILE *fich, *fich2; // Pointeur fichier Source
les blocs fonctionnent, ils etaient auparavant dans ma fonction main pour envoyer un fichier. maintenant, j'appelle ces fonctions d'envois et reception et ca ne marche pas....