Envoi FTP en batch erreures données transfère

momo -  
 thanatos -
Bonjour,
Je suis débutant en programmation mais j'aime bien de temps en temps bidouiller en récupérant des bouts de code à droite à gauche.

Alors voila je m'explique. Je chercher à faire un petit logiciel en batch qui permet d'envoyer des photos sur mon FTP.
Quand je fais des sorties avec des amis, chacun prend des photos et mon idée est de récupérer les photos à la fin sans à chaque fois faire le tour de tout le monde avec ma clé USB. Je pose ensuite ces photos sur mon site pour les partager avec tout le groupe.
J’ai donc fait le petit bout de code suivant:

Fichier batch :
ftp -s:moi.ftp

Fichier moi.ftp :
open adresse_serveur
Identifiant
mdp
lcd %~dp0
cd /dossier_de_mon_FTP
prompt bin
mput *.jpg
mput *.JPG
quit


Je compile le tout après en exe et je leur dit juste de placer le exe dans leur dossier de photo et de l’exécuter.
Mais avant même le compiler en exe, j’ai des problèmes avec ce code : j’ai des corruptions de données lors du transfère.
Quand je remplace le .jpg par un .txt quelconque, je n’ai pas de problème, je retrouve mon ficher impeccable. Mais par contre quand j’essais avec une image, voici le résultat a ce lien:
http://rotonde.asso.insa-lyon.fr/image_corrompu.JPG
http://rotonde.asso.insa-lyon.fr/image_non_corrompu.JPG

Quand celle-ci est lisible (environ une sur deux), elle présente des grandes striures (avec décalage de l’image et changement de teinte). Si je regarde la taille du fichier ou la dimension de l’image, il n’y a aucune différence. Même l’aperçu fait par Windows est correcte.

J’ai donc essayé une autre méthode en mettant toute mes images dans une archive zip et en remplaçant mon .jpg par .zip. L’envoie s’effectue normalement mais quand je retélécharge l’archive et que je l’ouvre, il me met quelle est corrompue (pourtant la taille est la même que l’archive d’origine).

J’ai essayé plusieurs variantes avec « prompt bin » en le plaçant juste après le mot de passe ou en le remplaçant juste par « bin » (le juste « bin » ne marche pas).

J’en appel donc à votre aide
Merci d’avance
A voir également:

2 réponses

swed
 
Bonjour,

La commande FTP pour passer en mode binaire est 'binary', et pas 'bin'.

Ca devrait fonctionner comme ca :
cd /dossier_de_mon_FTP
prompt
binary
mput *.jpg
mput *.JPG

(attention, ne pas mettre prompt et binary sur la même ligne : une commande par ligne).

Pourrais-tu me confirmer que c'est OK STP ?
D'avance merci
Marc
0
momo
 
Re
Ça marche parfaitement autant pour les images que pour pour les archives zip.
Un grand merci

J'ai ensuite compiler avec "bat to exe converter" en mettant le fichier .ftp en annexe et ca marche aussi parfaitement.

J'ai une autre question qui me vient maintenant que ce problème est résolu (mais elle n'est pas existentielle, c'est plus pour me faciliter les choses). Le serveur sur lequel j'envoie mes images n'est pas celui sur lequel j'ai mon site car celui-ci est en sftp (ftp sécurisé). Comment modifier mon fichier .ftp pour un envoi sur serveur SFTP si cela est possible, autrement je m'en passerais.

Encore merci pour cette info
Momo
0
thanatos
 
Je ne sais pas pour le sftp, a mon avis c'est pas possible (peut-être TELNET ferait l'affaire? je sias pas...) mais fais attention avec bat to exe, je suis le seul a avoir découvert une grosse faille (on peut très facilement obtenir le code source) donc ne mets pas de login et de mots de passe dans ton batch. Tu peux utiliser d'autres compilateurs ("quick batch filescompiler" je crois). Dommage pour bat2exe, il me plaisait tellement...
0