[RES]Connaitre la taille transférée pendant le transfert ftp

Vous débutez et vous avez besoin d'aide ? N'hésitez pas à poser vos questions
Avatar de l’utilisateur
omega
Messages : 633
Inscription : sam. 26/nov./2011 13:04
Localisation : Alger

[RES]Connaitre la taille transférée pendant le transfert ftp

Message par omega »

Bonjour à tous

Est ce que c'est possible de connaître la taille d'un fichier transférée pendant le transfert ftp?
FTPprogress() nous permet de savoir que le transfert est en cours d'exécution (si différent de -3 et -2) mais on ne sait pas vraiment ce qui a été transféré et ce qui reste à transférer.

J'ai vu ça sur certains logiciels ftp, donc c'est possible mais peut être avec un autre langage (le C++ je suppose) ou à l'aide d'une API windows en Pb??...

Merci
Dernière modification par omega le jeu. 11/avr./2013 10:14, modifié 1 fois.
Win7 (x64) 64 bits Pb 5.72
Avatar de l’utilisateur
falsam
Messages : 7324
Inscription : dim. 22/août/2010 15:24
Localisation : IDF (Yvelines)
Contact :

Re: Connaitre la taille transférée pendant le transfert ftp

Message par falsam »

Bonjour Omega. Regarde bien l'aide :)

PS : Place le curseur d'édition sur FTPProgress et touche F1 pour avoir l'aide.
Configuration : Windows 11 Famille 64-bit - PB 6.20 x64 - AMD Ryzen 7 - 16 GO RAM
Vidéo NVIDIA GeForce GTX 1650 Ti - Résolution 1920x1080 - Mise à l'échelle 125%
Avatar de l’utilisateur
omega
Messages : 633
Inscription : sam. 26/nov./2011 13:04
Localisation : Alger

Re: Connaitre la taille transférée pendant le transfert ftp

Message par omega »

Pourtant j'ai bien lu et relu tout ce qui concerne le ftp dans l'aide !

Je me demande comment se fait il que je n'ai pas lu cette partie (FTPprogress) je me suis contenté de lire les constantes possibles (en bas de l'aide) mais je n'ai pas lu le texte complet....

Merci pour cette bonne remarque
Win7 (x64) 64 bits Pb 5.72
Avatar de l’utilisateur
falsam
Messages : 7324
Inscription : dim. 22/août/2010 15:24
Localisation : IDF (Yvelines)
Contact :

Re: Connaitre la taille transférée pendant le transfert ftp

Message par falsam »

Un code que j'ai simplifié au maximum.

Code : Tout sélectionner

EnableExplicit

Enumeration
  #Ftp
EndEnumeration

Global FtpUrl.s, FtpPort.i, FtpUser.s, FTPPassWord.s
Global InputFile.s, InputFileSize.i, FtpFile.s, FTPdirectory.s

InitNetwork()

;Renseignez vos identifiants ftp
FtpUrl = "?"
FtpPort = 21
FtpUser = "?"
FTPPassWord = "?"
FTPdirectory = ""

If OpenFTP(#Ftp, FtpUrl, FtpUser, FTPPassWord, #PB_Ignore, FtpPort)
  
  SetFTPDirectory(#Ftp, FTPdirectory)
  Debug GetFTPDirectory(#Ftp)
  
  InputFile = OpenFileRequester("Choose a file to send", "", "*.*", 0)
  Debug InputFile
  
  InputFileSize = FileSize(InputFile)
    
  FtpFile = GetFilePart(InputFile)
  Debug FtpFile
  
  If SendFTPFile(#Ftp, InputFile, FtpFile, #ASYNCH) ;En arriere plan
    
    Repeat 
      Select FTPProgress(#Ftp)
        Case #PB_FTP_Started ;Valeur -1
          Debug "Début du transfert"
        
        Case #PB_FTP_Finished ;valeur -3
          Debug "Transfert terminée"
          Break
          
        Case #PB_FTP_Error ;Valeur -2  
          Debug "Erreur durant le transfert du fichier " + FtpFile
          Break
         
        Default
          Debug "Il reste " + Str(InputFileSize - FTPProgress(#Ftp)) + " Octets à transférer"
          
      EndSelect  
      Delay(100)  
    ForEver  
    
  EndIf
  
  CloseFTP(#Ftp)
Else
  MessageRequester("Erreur", "Impossible de se connecter au serveur FTP")
EndIf
Dernière modification par falsam le jeu. 28/mars/2013 13:11, modifié 2 fois.
Configuration : Windows 11 Famille 64-bit - PB 6.20 x64 - AMD Ryzen 7 - 16 GO RAM
Vidéo NVIDIA GeForce GTX 1650 Ti - Résolution 1920x1080 - Mise à l'échelle 125%
Avatar de l’utilisateur
omega
Messages : 633
Inscription : sam. 26/nov./2011 13:04
Localisation : Alger

Re: Connaitre la taille transférée pendant le transfert ftp

Message par omega »

Merci pour cet exemple, je vais tester maintenant.
Win7 (x64) 64 bits Pb 5.72
Avatar de l’utilisateur
falsam
Messages : 7324
Inscription : dim. 22/août/2010 15:24
Localisation : IDF (Yvelines)
Contact :

Re: Connaitre la taille transférée pendant le transfert ftp

Message par falsam »

omega a écrit :Merci pour cet exemple, je vais tester maintenant.
J'ai modifié le code en ajoutant une variable pour fixer le dossier de destination.
Configuration : Windows 11 Famille 64-bit - PB 6.20 x64 - AMD Ryzen 7 - 16 GO RAM
Vidéo NVIDIA GeForce GTX 1650 Ti - Résolution 1920x1080 - Mise à l'échelle 125%
Répondre