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

MFC Discussion :

Detected Memory leaks


Sujet :

MFC

  1. #1
    Membre éclairé
    Profil pro
    Inscrit en
    Octobre 2005
    Messages
    303
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Octobre 2005
    Messages : 303
    Par défaut Detected Memory leaks
    Bjr,
    A la fermeture de mon appli une fuite de mémoire est détectée. Je n'arrive pas à mettre la main sur le bout de code qui provoque cette fuite de mémoire.
    Avez-vous quelques conseils qui me permettrai de la localiser?

    Merci

  2. #2
    Rédacteur
    Avatar de farscape
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Novembre 2003
    Messages
    9 055
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

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

    Informations forums :
    Inscription : Novembre 2003
    Messages : 9 055
    Par défaut
    salut,
    commence par vérifier ceci:
    http://www.developpez.net/forums/sho...16#post1688516
    la presence de ce bloc dans tous les sources permet de tracer dans l'onglet debug l'emplacement de la fuite.

  3. #3
    Membre éclairé
    Profil pro
    Inscrit en
    Octobre 2005
    Messages
    303
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Octobre 2005
    Messages : 303
    Par défaut
    J'ai bien dans mon code #ifdef _DEBUG..., la sortie que j'obtient dans la fenêtre output est la suivante, mais à la sortie du prg.

    Detected memory leaks!
    Dumping objects ->
    {492503} normal block at 0x01CC5848, 101 bytes long.
    Data: <4 T T > 34 F8 C7 00 54 00 00 00 54 00 00 00 01 00 00 00
    {492502} client block at 0x01C992C0, subtype c0, 24 bytes long.
    a CFileException object at $01C992C0, 24 bytes long
    Object dump complete.

  4. #4
    Rédacteur
    Avatar de farscape
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Novembre 2003
    Messages
    9 055
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

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

    Informations forums :
    Inscription : Novembre 2003
    Messages : 9 055
    Par défaut
    salut , tu es sur que dans toutes tes sources tu as le bloc en question ?
    sinon tu as deja une piste c'est sur l'ouverture d'un fichier ou il doit y avoir un try catch avec un CFileExeption.

  5. #5
    Membre éclairé
    Profil pro
    Inscrit en
    Octobre 2005
    Messages
    303
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Octobre 2005
    Messages : 303
    Par défaut
    Bien j'ai placé un break sur tous les CFilexception de mon code sans rien trouver

  6. #6
    Rédacteur
    Avatar de farscape
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Novembre 2003
    Messages
    9 055
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

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

    Informations forums :
    Inscription : Novembre 2003
    Messages : 9 055
    Par défaut
    tu n'as pas oublié le delete de l'exception ?
    exemple:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
     
    try {
            // Execute some code that might throw an exception.
          }
     catch( CException* e )
     {
           // Handle the exception here.
               e->Delete();
     }

  7. #7
    Membre éclairé
    Profil pro
    Inscrit en
    Octobre 2005
    Messages
    303
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Octobre 2005
    Messages : 303
    Par défaut
    J'ai activé l'interception de toutes les exceptions et la tada
    Merci pour le coup de main

  8. #8
    Membre éclairé
    Profil pro
    Inscrit en
    Octobre 2005
    Messages
    303
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Octobre 2005
    Messages : 303
    Par défaut
    Citation Envoyé par farscape
    tu n'as pas oublié le delete de l'exception ?
    exemple:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
     
    try {
            // Execute some code that might throw an exception.
          }
     catch( CException* e )
     {
           // Handle the exception here.
               e->Delete();
     }
    bien vu...

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

Discussions similaires

  1. Detected memory leaks
    Par Syarko dans le forum C++
    Réponses: 10
    Dernier message: 29/04/2015, 22h17
  2. Detected memory leaks ?
    Par Kermichou dans le forum Bibliothèques
    Réponses: 1
    Dernier message: 17/01/2011, 17h29
  3. Detecter les memory leak sur Borland C++
    Par Bouillou dans le forum C++Builder
    Réponses: 5
    Dernier message: 15/03/2008, 05h20
  4. [memory leak detection]
    Par Patriarch24 dans le forum Windows
    Réponses: 3
    Dernier message: 07/09/2006, 17h57
  5. Detected memory leaks!
    Par Cirdan Telemnar dans le forum MFC
    Réponses: 27
    Dernier message: 16/06/2006, 10h04

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