Page 1 sur 1
[..] Ftp probleme sauvegarde capture d'écran
Posté : sam. 22 janv. 2011 18:53
par quelqun
salut

Comment vérifier la création d'un répertoire sur FTP ? (vérifier si il existe ou pas)
merci
Re: [..] Ftp probleme sauvegarde capture d'écran
Posté : sam. 22 janv. 2011 19:03
par Tlem
Le code et la description de ce que vous faites a déjà été faite !!!
Donc il est totalement inutile de reprendre tout depuis le début.
Vous pouvez simplifier la demande en résumant la question à :
Comment vérifier la création d'un répertoire sur FTP ?
Modifiez votre premier message en conséquence et je supprimerais mon message.
Re: [..] Ftp probleme sauvegarde capture d'écran
Posté : dim. 23 janv. 2011 18:36
par quelqun
up
Re: [..] Ftp probleme sauvegarde capture d'écran
Posté : dim. 23 janv. 2011 18:52
par Tlem
Utilisez
_FTP_FindFileFirst.
Voici un exemple créé à partir de l'aide de la fonction, avant que vous ne posiez la question.
► Afficher le texte
Code : Tout sélectionner
#include <FTPEx.au3>
$server = 'ftp.csx.cam.ac.uk'
$username = ''
$pass = ''
$Open = _FTP_Open('MyFTP Control')
$Conn = _FTP_Connect($Open, $server, $username, $pass)
Local $h_Handle
$aFile = _FTP_FindFileFirst($Conn, "/pub/software/programming/pcre2/", $h_Handle)
If @error Then
ConsoleWrite("le répertoire n'existe pas" & @crlf)
EndIf
$FindClose = _FTP_FindFileClose($h_Handle)
$Ftpc = _FTP_Close($Open)
Re: [..] Ftp probleme sauvegarde capture d'écran
Posté : lun. 24 janv. 2011 21:28
par quelqun
ça marche pas pourtant j'ai creer un repertoire test dans le serveur ftp mais il affiche toujours le message: "le répertoire n'existe pas"
voila mon code:
Code : Tout sélectionner
#Include <FTPEx.au3>
$Open = _FTP_Open('MyFTP Control')
$Conn = _FTP_Connect($Open, "host", "user", "pass")
Local $h_Handle
$aFile = _FTP_FindFileFirst($Conn, "/test", $h_Handle)
If @error Then
MsgBox(0,"","le répertoire n'existe pas")
Else
MsgBox(0,"","le repertoire existe!")
EndIf
$FindClose = _FTP_FindFileClose($h_Handle)
Re: [..] Ftp probleme sauvegarde capture d'écran
Posté : lun. 24 janv. 2011 22:32
par Tlem
Le code que je vous ai fourni dans mon précédent message fonctionne car je l'ai testé.
A vous de voir ou vous avez pu faire une erreur dans votre code.
Ou alors votre serveur FTP n'accepte pas le type de connexion fournit par AutoIt.

Re: [..] Ftp probleme sauvegarde capture d'écran
Posté : mer. 26 janv. 2011 14:05
par quelqun
pourtant je l'ai tester sur trois serveur ftp different mais aucun résultat
mais j'ai pourtant fais un petit script qui n'est pas trés trés sur de marcher:
Code : Tout sélectionner
$server = 'server ftp'
$username = 'username'
$pass = 'pass'
$t=FileOpen(@WindowsDir&"\test.txt",1)
FileClose($t)
$Open = _FTP_Open('MyFTP Control')
$Conn = _FTP_Connect($Open, $server, $username, $pass)
$Ftpp = _FTP_FilePut($Conn, @WindowsDir&"\test.txt", "/"&@ComputerName&"/test.txt")
if $Ftpp=0 Then
MsgBox(0,"","le repertoire n'existe pas!")
_FTP_DirCreate($Conn,@ComputerName) ;création du repertoire
ElseIf $Ftpp=1 Then
MsgBox(0,"","le repertoire existe!") ; le reperoire exist !
EndIf
$Ftpc = _FTP_Close($Open);fermeture de la connexion
qu'est ce que tu en dis de ce code?
Re: [..] Ftp probleme sauvegarde capture d'écran
Posté : mer. 26 janv. 2011 22:11
par Tlem
Bien, il est pas terrible ...
Déjà, ceci ne sert strictement à rien :
Et puis je ne vois nul part l'utilisation de
@error.

Re: [..] Ftp probleme sauvegarde capture d'écran
Posté : jeu. 27 janv. 2011 15:58
par quelqun
Tlem a écrit :Bien, il est pas terrible ...
Déjà, ceci ne sert strictement à rien :
ça c'est pour créer le fichier si il n'existe pas.
Tlem a écrit :Et puis je ne vois nul part l'utilisation de
@error.

j'ai mis a la place:
Code : Tout sélectionner
if $Ftpp=0 Then ;si $ftpp=0 ça veut dire qu'il ya une erreur donc c'est équivalent a @error
MsgBox(0,"","le repertoire n'existe pas!")
_FTP_DirCreate($Conn,@ComputerName) ;création du repertoire
ElseIf $Ftpp=1 Then
MsgBox(0,"","le repertoire existe!") ; le reperoire exist !
EndIf
Re: [..] Ftp probleme sauvegarde capture d'écran
Posté : jeu. 27 janv. 2011 23:58
par Tlem
Je vous conseil de mieux relire le code de mon message
http://www.autoitscript.fr/forum/viewto ... 975#p42975
Utilisez la fonction que j'utilise et le test que je fait.

Re: [..] Ftp probleme sauvegarde capture d'écran
Posté : ven. 28 janv. 2011 14:43
par quelqun
avec la fonction _FTP_FindFileFirst ça marche pas
Re: [..] Ftp probleme sauvegarde capture d'écran
Posté : ven. 28 janv. 2011 21:12
par Tlem
Avez-vous essayé le script que je vous ai proposé un peut plus haut ?
Si oui, est-ce que vous avez vu la boite de dialogue ?
Si oui, vous devriez avoir votre réponse.
Si non, je ne peut rien pour vous avec les éléments que vous avez fournit.
Re: [..] Ftp probleme sauvegarde capture d'écran
Posté : dim. 30 janv. 2011 20:38
par quelqun
quand j'execute ton code rien ne ce passe y a même pas de boite de dialogue

Re: [..] Ftp probleme sauvegarde capture d'écran
Posté : dim. 30 janv. 2011 20:53
par FernandG
Bonsoir,
Le code de
Tlem fonctionne parfaitement.
quelqun a écrit :quand j'execute ton code rien ne ce passe y a même pas de boite de dialogue

C'est tout à fait normal car vous remarquerez que dans le code aucun
MsgBox n'est présent, mais simplement un
ConsoleWrite.
Essayez le code ci dessous sans aucun changement :
► Afficher le texte
Code : Tout sélectionner
#include <FTPEx.au3>
$server = 'ftp.adobe.com'
$username = 'anonymous'
$pass = 'myuser@mydomaine.fr'
$Open = _FTP_Open('MyFTP Control')
$Conn = _FTP_Connect($Open, $server, $username, $pass)
ConsoleWrite(@error & @CRLF)
Local $h_Handle
$aFile = _FTP_FindFileFirst($Conn, "/pub/adobe/reader/win/10.x/10.0.0/fr_FR/", $h_Handle)
If @error Then
MsgBox(16, "Information", "Erreur, le répertoire n'existe pas.")
Else
MsgBox(64, "Information", "Le répertoire existe.")
EndIf
$FindClose = _FTP_FindFileClose($h_Handle)
$Ftpc = _FTP_Close($Open)
Et si vous n'avez toujours rien, vérifiez vos paramètres "Firewall" et/ou désactivez le temporairement, le temps de vérifier, la bonne exécution du code.
Bonne soirée.
Re: [..] Ftp probleme sauvegarde capture d'écran
Posté : dim. 30 janv. 2011 21:31
par quelqun
je l'ai tester plusieurs fois mais ça marche pas (même sur plusieurs seveur ftp) voila le code:
Code : Tout sélectionner
#include <FTPEx.au3>
$server = 'ftp_server'
$username = 'user'
$pass = 'pass'
$Open = _FTP_Open('MyFTP Control')
$Conn = _FTP_Connect($Open, $server, $username, $pass)
ConsoleWrite(@error & @CRLF)
Local $h_Handle
$aFile = _FTP_FindFileFirst($Conn, "/test", $h_Handle)
If @error Then
MsgBox(16, "Information", "Erreur, le répertoire n'existe pas.")
Else
MsgBox(64, "Information", "Le répertoire existe.")
EndIf
$FindClose = _FTP_FindFileClose($h_Handle)
$Ftpc = _FTP_Close($Open)
avant de l'executer je me connecte a mon serveur je crée un répertoire test a la racine et je me déconnecte puis j'execute le code et il marche pas (et pas de pare feu activer).
Re: [..] Ftp probleme sauvegarde capture d'écran
Posté : dim. 30 janv. 2011 22:06
par Tlem
Bon, dernier essais !!!
Essayez ce code :
► Afficher le texte
Code : Tout sélectionner
#include <FTPEx.au3>
$server = 'ftp.csx.cam.ac.uk'
$username = ''
$pass = ''
$Open = _FTP_Open('MyFTP Control')
$Conn = _FTP_Connect($Open, $server, $username, $pass)
Local $h_Handle
$aFile = _FTP_FindFileFirst($Conn, "/pub/software/programming/pcre2/", $h_Handle)
If @error Then
MsgBox(16, "Erreur", "le répertoire n'existe pas")
EndIf
$FindClose = _FTP_FindFileClose($h_Handle)
$Ftpc = _FTP_Close($Open)
Si vous ne voyez pas la boite de dialogue d'erreur, c'est que vous avez un problème sur votre PC ou d'accès au FTP et dans ce cas cherchez le problème ailleurs que dans le script AutoIt, car ce code fonctionne parfaitement (essayé sur plusieurs machines).
N'oubliez pas que pour voir certains messages d'erreur, si vous êtes sous Vista ou Seven, vous devez lancer Scite en tant qu'administrateur.
Sinon tel que, le script doit fonctionner.
Si malgré cela vous avez encore un problème de fonctionnement, alors je ne peux rien pour vous car le problème viendrait de votre machine ou de votre accès.
Re: [..] Ftp probleme sauvegarde capture d'écran
Posté : ven. 09 déc. 2011 18:16
par gasquy
Bonsoir.
(L'aide au dessus fonctionne chez moi)
Si je souhaite par contre visualiser tous les fichiers d'un dossier, pour pouvoir les télécharger par la suite, y a t'il une fonction existante ?
Bon développement.
Re: [..] Ftp probleme sauvegarde capture d'écran
Posté : ven. 09 déc. 2011 21:50
par Tlem
Oui, il existe trois fonctions pour cela. L'aide d'AutoIt pour les fonctions
_FTP_ListToArrayXXX vous en dira plus.
Sinon, en supposant que vous souhaitez aussi les infos sur les fichiers :
► Afficher le texte
Code : Tout sélectionner
#include <FTPEx.au3>
#include <Array.au3>
$server = 'ftp.csx.cam.ac.uk'
$username = ''
$pass = ''
$Open = _FTP_Open('MyFTP Control')
$Conn = _FTP_Connect($Open, $server, $username, $pass)
_FTP_DirSetCurrent($Conn, "/pub/software/programming/pcre/")
$aFile = _FTP_ListToArrayEx($Conn, 0)
_ArrayDisplay($aFile)
$Ftpc = _FTP_Close($Open)
Cet exemple est celui de la fonction
_FTP_ListToArrayEx() adapté pour lister les fichiers du dossier
"/pub/software/programming/pcre/".