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

Composants VCL Delphi Discussion :

Indy TidFTP erreur "Can't create socket"


Sujet :

Composants VCL Delphi

  1. #1
    Membre du Club
    Profil pro
    Inscrit en
    Avril 2006
    Messages
    80
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2006
    Messages : 80
    Points : 56
    Points
    56
    Par défaut Indy TidFTP erreur "Can't create socket"
    Bonjour à tous,

    J'ai réalisé un programme en Delphi XE3 qui utilise le composant INDY TidFTP pour échanger avec un serveur FTP FileZilla des plus classique.
    J'ai une tâche cyclique qui récupère et dépose des fichiers sur le serveur FTP. Mon programme n'est pas destiné à un utilisateur mais doit tourner "en tâche de fond". J'ai juste une IHM minimaliste pour le débogage, enregistrer les erreurs éventuelles, etc.
    Ce programme tourne sur plusieurs site (une vingtaine) et à une fréquence assez élevée (je me connecte toute les 10 sec au serveur) mais les fichiers échangés sont petits.

    Globalement cela fonctionne sauf que j'ai deux problèmes bloquants :

    1. De temps à autre, j'ai des erreurs qui remonte des composants INDY. Principalement "Can't create socket" mais aussi "Erreur de socket n° 10054 Connexion réinitialisée par l'homologue (peer)". Je n'arrive pas à comprendre pourquoi elles surviennent de façon aléatoires alors que mon serveur est accessible, j'ai la connexion Internet etc. Sans changer les paramètres de connexion, un ou deux tours après cela fonctionne.

    2. Non seulement les erreurs ci-dessous apparaissent de façon aléatoires mais elles apparaissent parfois dans des boites de dialogues !. Bien que toutes mes instructions FTP sont protégées par des blocs de type
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
            try
              FTP.Connect;
              FTPStatus('FTP '+FTP.Host+ ' connecté');
            except
              on e: EIdException do begin
                ErrorMsg(MsgTitle + 'Impossible de se connecter au serveur FTP '+FTP.Host +' - '+ e.Message);
                Exit(False);
              end;
              on e: Exception do begin
                ErrorMsg(MsgTitle + 'Impossible de se connecter au serveur FTP '+FTP.Host +' - '+ e.Message);
                Exit(False);
              end;
            end;
    Je précise que mon programme est bien compilé en mode RELEASE et que mon traitement soit dans un Thread ou un simple Timer ne change rien au problème...

    Je ne m'en sort pas et cela devient ingérable merci d'avance pour votre aide.

  2. #2
    Membre du Club
    Profil pro
    Inscrit en
    Avril 2006
    Messages
    80
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2006
    Messages : 80
    Points : 56
    Points
    56
    Par défaut
    Bonjour à tous,

    Manifestement, mon problème n'a pas soulevé l'enthousiasme général mais je pense avoir trouvé.

    Pour ceux qui serait intéressés, je n'ai pas réussi à m'en sortir avec les composants INDY. J'ai toujours une boite de dialogue qui apparait de temps en temps lorsqu'il y a une erreur. J'ai réécrit avec les composants Overbyte ICS et avec eux, lorsqu'une erreur/exception survient, je n'ai plus de message intempestif.

    Pour le fond du problème, cad le message "can't create socket", il s'agit de la configuration du serveur FTP FileZilla. Il faut utiliser une plus large plage de port. J'ai lu ça sur le forum de FileZilla.

  3. #3
    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 : 55
    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 457
    Points
    28 457
    Par défaut
    ce que tu indiques ne permet pas de diagnostique précis...la seule idée qui me vient à l'esprit serait que tu ne fermes pas tes sessions FTP et qu'au bout d'un moment Windows râle

    tu peux lancer "netstat -n" en ligne de commande pour voir si c'est pas ça

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

Discussions similaires

  1. Indy - IdHTTP Erreur socket 10061
    Par Fxg dans le forum Web & réseau
    Réponses: 4
    Dernier message: 25/09/2012, 15h49
  2. [MySQL] Erreur "#1005 - Can't create table (errno: 150)"
    Par R3MIX dans le forum PHP & Base de données
    Réponses: 2
    Dernier message: 17/02/2012, 23h48
  3. Réponses: 2
    Dernier message: 14/05/2010, 14h59
  4. Message d'erreur : "Can't create/write to file..".
    Par dimitri13 dans le forum Administration
    Réponses: 0
    Dernier message: 29/03/2010, 12h10
  5. Erreur : Activex component can't create Object
    Par leo13 dans le forum Macros et VBA Excel
    Réponses: 1
    Dernier message: 25/02/2008, 12h55

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