Cette source n'est pas de moi, elle permet via asp de commander le logiciel ftp.exe
j'ai fait quelques essais avec des fichiers plus ou moins gros, le plus gros etant une base de données access de 8Mo et ça a fonctionné...
Je n'ai essayé ce code que sur Windows 2000 Server, je ne sais donc pas s'il fonctionne bien sur d'autre systemes d'exploitation, je suppose que oui dès l'instant où l'application ftp.exe est présente sur le disque.
Source / Exemple :
<%
LeServer = "adresse du serveur ftp"
Login = "votre login"
Password = "votre mot de passe"
'Pour commencer nous allons créer un fichier qui va contenir les commandes émises par ftp.exe
Set FSO = CreateObject("Scripting.FileSystemObject")
Set EcrireFichier = FSO.CreateTextFile("c:\fichier.txt", True)
'Dans ce fichier nous allons ecrire toutes les commandes qui seront envoyées
'open & server ==> ouvre une connexion vers le serveur ftp
EcrireFichier.WriteLine ("open " & LeServer)
'login ==> envoi le login au serveur ftp
EcrireFichier.WriteLine (Login)
'password ==> envoi le mot de passe au serveur ftp
EcrireFichier.WriteLine (Password)
'binary ==> indique au serveur que les fichiers seront envoyer en mode binaire
EcrireFichier.WriteLine ("binary")
'put adressefichier ==> envoi le fichier sur le serveur ftp
'adressefichier étant l'adresse du fichier en local
EcrireFichier.WriteLine ("put " & "d:\essai.txt")
'bye ==> déconnexion
EcrireFichier.WriteLine ("bye")
'on n'oublie pas de refermer le fichier
EcrireFichier.Close
'Voila maintenant toutes nos instructions sont écrites dans le fichier
'Nous allons maintenant piloter l'application ftp.exe
'D'abord nous créons un objet shell
Set objShell = CreateObject( "WScript.Shell" )
'Puis nous envoyons la commande a l'application
objShell.Run ("ftp -s:" & chr(34) & "c:\fichier.txt" & chr(34))
Set objShell = Nothing
%>
Conclusion :
Pour conclure je dirais qu'il ne s'agit bien evidemment que d'un petit code, si vous désirez approfondir aller dans l'invite de commande dos, tapez ftp ce qui vous donnera :
ftp>
tapez à ce moment là help et vous obtiendrez la liste des commandes possibles.
tapez help nomcommande pour connaitre les fonctions de chaque commande
Je n'ai pour le moment pas travaillé sur la récupération des informations du logiciel, à savoir :
octets envoyés, fichier recu ou non, liste des fichiers présents, et tout le toutim.