Bonjour à tous,
J'essai en VBScript de créer un petit programme qui me permettra "dans un futur proche, je l'espère" d'interagir avec un serveur FTP :
- Lister les dossiers et sous-dossiers distants;
- Télécharger un fichier depuis le FTP sur mon disque dur;
- Télécharger un fichier depuis mon disque dur sur le FTP;
- Créer un dossier;
- Supprimer un fichier ou un dossier;
- Gestion d'erreurs (erreur de connexion, transfert achevé à 100%, etc.).
J'ai bien trouvé quelques bouts de codes, mais malheureusement avec très peu de commentaire et j'avoue m'y perdre sur comment les combiner !
J'ai compris (enfin je l'espère) le principe:
- Créer un fichier txt où indiquer les requêtes FTP;
- Appeler par un RUN le ftp.exe intégré à Windows.
Voici ma base de travail
Voici donc où j'en suis et si quelqu'un se sent l'âme pédagogue pour m'expliquer les bases et comment utiliser au mieux les fonctions put, get, etc., je l'en remercie par avance.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64 Option explicit 'Déclaration des variables et constantes Dim objFSO Dim WSHShell Dim AdresseFTP, Login, Password Const ForReading = 1, ForWriting = 2, ForAppending = 8 Const StrFTP = "..." Const StrLogin = "..." Const StrPassword = "..." 'Objets Set objFSO = CreateObject("Scripting.FileSystemObject") Set WSHShell = CreateObject("WScript.Shell") 'Création du fichier txt Set objFile = objFSO.OpenTextFile(cheminFichier\CommandeFTP.txt, 2,true) with objFile 'Connexion au FTP .Write "open" & StFTP & vbCrLf 'Login .Write "login" & StrLogin & vbCrLf 'Pass .Write "pass" & StrPassword & vbCrLf 'C'est ici que je ne sais pas trop quoi écrire selon mes besoins 'J'ai crois savoir qu'il existe les attributs PUT, GET, LS, MKDIR ... 'Lister les dossiers et sous-dossiers (racine ou dossier précis) distants dans un fichier txt que je vais appeler Arborescence.txt ??? 'Télécharger un fichier depuis le FTP sur mon disque dur (CheminSource et CheminDestination) ??? 'Télécharger un fichier depuis mon disque dur sur le FTP (CheminSource et CheminDestination) ??? 'Créer un dossier ??? 'Supprimer un fichier ou un dossier avec ses sous-dossiers ??? 'Fin de connexion FTP .Write "quit" 'Fermeture du fichier txt .Close end with 'Libère la mémoire Set objFile = nothing 'Lance le fichier txt de commandes FTP 'Visiblement c'est également sur cette ligne de commande que l'on doit indiquer le fichier txt où les informations de retour vont s'écrire WSHShell.Run "cmd /c ftp.exe -s:" & cheminFichier\CommandeFTP.txt & " > " & cheminFichier\RetourFTP.txt, 0 , True Set WSHShell= nothing
Partager