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 :

[debutant][MFC] erreur 0xC0000005: Access Violation.


Sujet :

MFC

  1. #1
    oum
    oum est déconnecté
    Membre confirmé
    Profil pro
    Développeur Java
    Inscrit en
    Avril 2006
    Messages
    56
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Java
    Secteur : Enseignement

    Informations forums :
    Inscription : Avril 2006
    Messages : 56
    Par défaut [debutant][MFC] erreur 0xC0000005: Access Violation.
    Bonjour ,

    j'essaie depuis deux jours de créer avec une MFC une bête dialog box avec deux boutons radios.
    J'ai beau lire et relire le tuto de farscape sur les mfc, essayer plusieurs options, fouiller le forum, rien n'y fait: j'ai toujours le message
    0xC0000005: Access Violation.
    qui se déclenche lorsque j'arrive au DoModal.
    Avec le debug le planatge se produit dans la classe WINCORE.CPP et la fonction CWnd::RunModalLoop(DWORD dwFlags)
    .../...
    // phase2: pump messages while available
    do
    {
    ASSERT(ContinueModal());

    // pump message, but quit on WM_QUIT
    if (!AfxGetThread()->PumpMessage())
    {
    AfxPostQuitMessage(0);
    return -1;
    }


    sur l'instruction :
    if (!AfxGetThread()->PumpMessage()

    je ne comprends pas pourquoi, vu que ce code ne m'appartient pas, et je ne sais vraiment plus quoi faire pour l'empêcher de se planter là.
    Quelqu'un aurait-il une idée ?

  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,
    en général ce genre d'erreurs est liée à l'initialisation des contrôles.
    commence par vérifier tes identifiants et les associations avec tes variables contrôles.
    Par exemple: un identifiant de contrôle dans cette méthode qui n'existe pas dans la ressource provoquera une erreur...
    tu peux aussi mettre un point d'arrêt dans la méthode DoDataExchange de la boite de dialogue et faire avancer le programme pas a pas pour voir.
    si c'est ok met un point d'arrêt dans ta méthode OnInitDialog et suit le déroulement.

  3. #3
    oum
    oum est déconnecté
    Membre confirmé
    Profil pro
    Développeur Java
    Inscrit en
    Avril 2006
    Messages
    56
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Java
    Secteur : Enseignement

    Informations forums :
    Inscription : Avril 2006
    Messages : 56
    Par défaut [résolu]
    Bonjour Farscape,

    merci pour ta réponse.
    Cela faisait 2 jours que je faisais du pas à pas dans la MFC et le programme sans trouver.
    Finalement un de mes collègues a recréé le projet à partir de zéro en réinjectant le code programme par programme, et là ça marche.
    Je ne saurai jamais pourquoi ce bug précisément.
    Il semble que à force de maintenir du vieux code, au bout d'un certain temps, la configuration s'emmêle les pieds. Et là l'ajout d'une MFC a été la modif de trop.

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

Discussions similaires

  1. Réponses: 13
    Dernier message: 28/04/2008, 11h48
  2. [0xC0000005: Access Violation.]
    Par ARachid dans le forum VC++ .NET
    Réponses: 1
    Dernier message: 24/04/2007, 23h34
  3. Réponses: 2
    Dernier message: 19/04/2007, 14h30
  4. Réponses: 2
    Dernier message: 16/11/2006, 17h09
  5. Réponses: 9
    Dernier message: 08/11/2005, 09h56

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