IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

 Delphi Discussion :

Recherche récursive avec TIdFTP


Sujet :

Delphi

  1. #1
    Membre à l'essai
    Profil pro
    Inscrit en
    Avril 2008
    Messages
    22
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2008
    Messages : 22
    Points : 15
    Points
    15
    Par défaut Recherche récursive avec TIdFTP
    Bonjour,

    Je suis débutant en Delphi, et je réalise un client FTP.
    J'arrive a lister le contenu d'un FTP dans une TFileListBox, et 'aimerais pouvoir, lorsque l'utilisateur double clik sur un item, le télécharger.

    Quand il s'agit d'un fichier, j'y arrive.
    Maintenant j'aimerais, s'il double clik sur un dossier, télécharger tout ce qu'il y a dedans. Il me faut donc faire une recherche récursive. Mais le problème est que les FindFirst, FindNext, FindClose sont, sauf erreur de ma part, utilisables uniquement pour les recherches sur un ordinateur, et non sur un FTP.

    Auriez-vous une solution, un snippet ou un projet pour m'aider, s'il vous plaît ?

    Merci d'avance pour vos réponses

  2. #2
    Expert éminent sénior
    Avatar de Paul TOTH
    Homme Profil pro
    Freelance
    Inscrit en
    Novembre 2002
    Messages
    8 964
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 54
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Freelance
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Novembre 2002
    Messages : 8 964
    Points : 28 445
    Points
    28 445
    Par défaut
    en effet

    je ne connais pas ce composant mais il doit contenir une propriété PATH ou équivalent que tu dois mettre à jour pour indiquer le nouveau répertoire distant, et tu redemandes la listes des fichiers
    Developpez.com: Mes articles, forum FlashPascal
    Entreprise: Execute SARL
    Le Store Excute Store

  3. #3
    Modérateur
    Avatar de Rayek
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Mars 2005
    Messages
    5 235
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 50
    Localisation : France, Haute Savoie (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mars 2005
    Messages : 5 235
    Points : 8 504
    Points
    8 504
    Par défaut
    Regarde dans ma signature EasyIndy.
    J'ai fait un mini client FTP qui permet certaine des actions que tu souhaites faire.

    pour ton récursif par exemple, il te faudra utiliser les fonctions ChangeDirectory et GetFileList à plusieurs reprise afin de récupérer l'ensemble des futurs fichiers à télécharger.
    Modérateur Delphi

    Le guide du bon forumeur :
    __________
    Rayek World : Youtube Facebook

  4. #4
    Membre à l'essai
    Profil pro
    Inscrit en
    Avril 2008
    Messages
    22
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2008
    Messages : 22
    Points : 15
    Points
    15
    Par défaut
    Merci pour vos réponses rapides.
    Rayek, je n'ai pas trouvé de code concernant le téléchargement de dossier mais juste un "Vous ne pouvez pas downloader un répertoire" !

    Je vais donc essayer de faire avec des ChangeDirectory et GetFileList



    Hors sujet :
    1° / Savez-vous comment gerer l'appui sur le bouton "annuler" d'un SaveDialog ?
    2° / J'ai un bug avec du drag'n'drop : lorsque j'ouvre un SaveDialog, lorsqu'il se ferme, mon curseur reagit comme si j'avais draggé quelque chose, et je suis obligé de clické n'importe où pour "droppé", alors que je n'ai rien. Une idée ?

  5. #5
    Rédacteur
    Avatar de evarisnea
    Homme Profil pro
    Ingénieur intégration
    Inscrit en
    Juin 2005
    Messages
    1 957
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Cameroun

    Informations professionnelles :
    Activité : Ingénieur intégration
    Secteur : Transports

    Informations forums :
    Inscription : Juin 2005
    Messages : 1 957
    Points : 4 384
    Points
    4 384
    Par défaut
    Citation Envoyé par Leucistic Voir le message
    Hors sujet :
    1° / Savez-vous comment gerer l'appui sur le bouton "annuler" d'un SaveDialog ?
    comme ceci:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    if savedialog1.execute then
      //le bouton enregistrer a été sélectionné
    else
      //le bouton annuler ou la croix de fermeture a été pressée
    Citation Envoyé par Leucistic Voir le message
    2° / J'ai un bug avec du drag'n'drop : lorsque j'ouvre un SaveDialog, lorsqu'il se ferme, mon curseur reagit comme si j'avais draggé quelque chose, et je suis obligé de clické n'importe où pour "droppé", alors que je n'ai rien. Une idée ?
    aucune idée

  6. #6
    Membre à l'essai
    Profil pro
    Inscrit en
    Avril 2008
    Messages
    22
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2008
    Messages : 22
    Points : 15
    Points
    15
    Par défaut
    Merci et désolé pour le UP.

    En revanche, je dois mal utiliser le SaveDialog, car voici comment je m'en sers :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    SaveDialog1.Execute;  // Lance le SaveDialog
          // Si le SaveDialog a retourné quelque chose : instructions
          if SaveDialog1.FileName <> '' then
    Comment faut-il faire pour ouvrir la boite de dialogue si ce n'est pas avec Execute ?

  7. #7
    Rédacteur
    Avatar de evarisnea
    Homme Profil pro
    Ingénieur intégration
    Inscrit en
    Juin 2005
    Messages
    1 957
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Cameroun

    Informations professionnelles :
    Activité : Ingénieur intégration
    Secteur : Transports

    Informations forums :
    Inscription : Juin 2005
    Messages : 1 957
    Points : 4 384
    Points
    4 384
    Par défaut
    tu dois jetter un coup d'oeil dans l'aide au sujet de la fonction Execute du savedialog.
    cette fonction ouvre la boite de dialogue de sauvegarde de fichier, et renvoie la valeur booléenne True si on a précisé un nom de fichier pour l'enregistrement, False dans le cas contraire.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [VB]Recherche récursive...
    Par Empty_body dans le forum VB 6 et antérieur
    Réponses: 13
    Dernier message: 10/02/2006, 14h03
  2. Réponses: 2
    Dernier message: 21/12/2005, 19h33
  3. Problème de fonction récursive avec un TcxDBTreeList
    Par isachat666 dans le forum Composants VCL
    Réponses: 1
    Dernier message: 05/12/2005, 13h12
  4. Réponses: 4
    Dernier message: 15/09/2005, 13h27
  5. Recherche "étoilée" avec std::set
    Par guejo dans le forum MFC
    Réponses: 2
    Dernier message: 06/05/2004, 13h28

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo