J'ai un exécutable de test qui crée une session internet qui me provoque le message classique "Debug Assertion Failed". Voilà le code qui me provoque l'erreur :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
 
   CInternetSession *sess = NULL;
   sess = new CInternetSession();
La création d'une instance de CInternetSession plante.
Si j'ignore le message d'erreur, tout va bien, je peux continuer mon traitement (pas super quand-même).
Maintenant, la création d'une instance de CInternetSession est faite dans une CGI qui est appelée par un service internet local. Pour debugger ma CGI, j'ai fait afficher une popup avec un bouton OK pour que j'aie le temps d'ouvrir Visual C++ et de débugger la CGI.
Quand arrive le moment de la création d'une instance d'InternetSession, le code bloque sur la ligne :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
 
return (*pfnMessageBoxA)(hWndParent, lpText, lpCaption, uType);
ligne de code qui se trouve dans le fichier CRTMBOX.c et dans la fonction qui affiche un message (le fameux message Debug Assertion Failed).
Seulement, le message n'apparaît pas et je me retrouve coincé avec ma CGI.
Donc, quelqu'un aurait une idée pourquoi est-ce que j'ai ce message (qui apparaît d'habitude lors des écrasements mémoire) sur du code qui n'est pas à moi et pourquoi la fenêtre d'erreur ne s'affiche pas quand je debugge une CGI que je n'ai pas lancée via Visual C++ ?
Merci