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 :

LOG [TIdFTPClient & TIdLogFile ] >> MEMO


Sujet :

Delphi

  1. #1
    Membre régulier
    Homme Profil pro
    Inscrit en
    Juin 2012
    Messages
    142
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Marne (Champagne Ardenne)

    Informations forums :
    Inscription : Juin 2012
    Messages : 142
    Points : 80
    Points
    80
    Par défaut LOG [TIdFTPClient & TIdLogFile ] >> MEMO
    Bonjours a tous,

    Est-il possible d'afficher en temps réel les messages interceptés par TIdLogFile dans un TMemo ?

    Merci de votre réponse.

    Dur Dur de trouver la Doc de Indy 10
    Il n'existe guère de problèmes sans solution, et parfois l'absence de solution décourage le problème

  2. #2
    Expert éminent sénior
    Avatar de ShaiLeTroll
    Homme Profil pro
    Développeur C++\Delphi
    Inscrit en
    Juillet 2006
    Messages
    13 459
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Seine Saint Denis (Île de France)

    Informations professionnelles :
    Activité : Développeur C++\Delphi
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juillet 2006
    Messages : 13 459
    Points : 24 873
    Points
    24 873
    Par défaut
    Qui utilises le TIdLogFile ?
    Ton code ou Est-ce interne au TIdFTPClient ?

    Si c'est ton code, il te suffit de surcharger TIdLogFile en faisant ta propre classe, redéfinit la méthode virtuelle LogWriteString écrivant dans le FFileStream lié au fichier et ajoute un OnLog
    Puis dans ce nouveau OnLog, tu fais ce que tu veux dont utiliser un TMemo

    TIdFTPClient c'est Indy 9 pour Delphi 7 !
    j'utilise Indy 10 dans Delphi XE2, à toi de voir ce qui existe dans ta version

    Si c'est un code interne au TIdFTP, à la lecture du code de Indy 10 cela doit pouvoir se faire par Intercept du TIdTCPConnection ou le Intercept du TIdIOHandler

    Dans le OnDataChannelCreate, tu as le TIdTCPConnection en tant que paramètre ADataChannel
    Si le ADataChannel.Intercept est nil
    Tu peux lui fournir ton implémentation de TIdLogBase
    Si le ADataChannel.Intercept est différent de nil
    Voir si tu peux fournir un gestionnaire pour l'un des TIdInterceptNotifyEvent ou TIdInterceptStreamEvent ou alors tente de fournir une autre implémentation de TIdLogBase qui tu affectes au ADataChannel.Intercept.Intercept

    Après, tout dépend comme fonctionne ce log et les Intercept, n'ayant jamais eu ce besoin, mes propos sont purement théoriques
    Aide via F1 - FAQ - Guide du développeur Delphi devant un problème - Pensez-y !
    Attention Troll Méchant !
    "Quand un homme a faim, mieux vaut lui apprendre à pêcher que de lui donner un poisson" Confucius
    Mieux vaut se taire et paraître idiot, Que l'ouvrir et de le confirmer !
    L'ignorance n'excuse pas la médiocrité !

    L'expérience, c'est le nom que chacun donne à ses erreurs. (Oscar Wilde)
    Il faut avoir le courage de se tromper et d'apprendre de ses erreurs

Discussions similaires

  1. [Débutant] Ouvrir plusieur fichier "log" dans un memo !
    Par microbe83 dans le forum C++Builder
    Réponses: 5
    Dernier message: 27/04/2015, 12h37
  2. [] [Stratégie] Comment créer un fichier log
    Par Skeezo dans le forum Installation, Déploiement et Sécurité
    Réponses: 4
    Dernier message: 16/09/2002, 18h30
  3. Réponses: 3
    Dernier message: 22/07/2002, 14h19
  4. memo+fontdialog
    Par bohemianvirtual dans le forum Composants VCL
    Réponses: 2
    Dernier message: 18/07/2002, 14h27
  5. [Kylix] Memo color
    Par Metal3d dans le forum EDI
    Réponses: 1
    Dernier message: 21/05/2002, 17h12

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