Question

Je me demande comment déboguer l'erreur suivante:

Debug Assertion failure

Program: tomtoprog.exe
File: dbgheap.c
Line: 1044

Expression:_CrtIsValidHeapPointer(pUserData)
...

Je suis calme nouveau pour le développement de fenêtres avec VC ++ 6 ... est-il un valgrind ou quelque chose comme ça? Le code tomtoprog est pas écrit par moi et ce plutôt en désordre ... donc quelque chose comme valgrind rendrait ma vie plus simple ...

Merci d'avance!

Cordialement,

Zhengtonic

Était-ce utile?

La solution

Il semble que vous avez soit la corruption du tas ou que vous faites un double libre du même pointeur. Si vous cassez dans le débogueur ce qui est la dernière ligne de votre code qui est appelé lorsque l'assertion se produit?

La meilleure façon de vérifier les problèmes comme celui-ci est d'utiliser un vérificateur de tas de pages comme Pageheap.exe

Voir aussi cette question connexe sur le débordement de la pile

Heap corruption sous Win32; comment localiser?

Autres conseils

Hit « Retry », et ça va briser dans le débogueur. Cela vous donnera la pile d'appels. A partir de là, vous pouvez trouver la partie de votre code qui est en faute.

Astuce:. Vous supprimez / sans-ing probablement quelque chose deux fois

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top