nonolenaufragé
28Messages postés
22 avril 2009Date d'inscription
26 mai 2009 à 09:50
WAAAAAh moi j'ai la même erreur, j'ai suivi vos solutions mais ça marche toujours paaas !
Le problème vient sîurement de mon code, au niveau de la commande STOR (les commandes précédentes fonctionnent) :
printf("Phase 1\n");
send(sock, "USER *****\r\n", 12, 0);
for(i=-10000000.0; i<10000000.0; i=i+0.1); // tempo pour laisser le temps au serveur de recevoir le message
printf("Phase 2\n");
send(sock, "PASS *****\r\n", 12, 0);
for(i=-10000000.0; i<10000000.0; i=i+0.1);
printf("Phase 3\n");
send(sock, "CWD /\r\n", 7, 0);
for(i=-10000000.0; i<10000000.0; i=i+0.1);
printf("Phase 4\n");
send(sock, "PWD\r\n", 5, 0);
for(i=-10000000.0; i<10000000.0; i=i+0.1);;
printf("Phase 5\n");
send(sock, "TYPE A\r\n", 8, 0);
for(i=-10000000.0; i<10000000.0; i=i+0.1);
printf("Phase 6\n");
send(sock, "PASV\r\n", 6, 0);
for(i=-10000000.0; i<10000000.0; i=i+0.1);
printf("Phase 7\n");
send(sock, "STOR fichier_telecharge.txt\r\n", 29, 0); // PROBLEME A CE NIVEAU-LA ?
for(i=-10000000.0; i<10000000.0; i=i+0.1);
/* OUVRIR ET LIRE LE FICHIER (je sais même pas si c'est utile) */
fichier = fopen("fichier_telecharge.txt", "rb");
//On fait pointer fichier vers la fin du fichier
fseek(fichier,SEEK_END,0);
/*On met la taille du fichier dans taille_fichier (car fichier pointe
vers la fin du fichier, sa position donne le nombre d'octets
pour arriver à la fin) */
taille_fichier=ftell(fichier);
//On refait pointer fichier au début du fichier
fseek(fichier,SEEK_SET,0);
//Allocation de temp avec la taille du fichier
taille_fichier_2 = sizeof(char) * taille_fichier;
temp=(char *)malloc(sizeof(char) * taille_fichier);
fscanf(fichier, "%s", temp);
/* trouver la bonne formule pour l'envoi du fichier ? */
printf("Phase 8\n");
send(sock, temp, taille_fichier_2, 0);
for(i=-10000000.0; i<10000000.0; i=i+0.1);
printf("voila ce qu'il y a dans temp: ***%s***\n", temp); // il y a bien le contenu du fichier
/* trouver la bonne formule pour l'envoi du fichier ? */
printf("Transfert reussi ?\n");
scanf("%lf", &i);
fclose(fichier);
//On libère temp
free(temp);
closesocket(sock);
return 0;
Voilà, désolé de vous envoyer le code brut, mais heureusement il est assez simple ^^.
Adez-moi, s'il vous plait, c'est un travail que je dois rendre dans 3 semaines et je sèche complètement.