vc++6 try catch gestion des exceptions..
Salut !
Deux problemes bizarres concernant la gestion des exceptions.
1: j'ai mis en place une serie de try catch, en mode release, cela releve l'erreur et permet de recuperer l'execution du programme,
mais je m'apercois que le code ins�r� dans le bloc catch ne semble pas etre execut�.
2: en passant en mode debug, je provoque l'erreur (CMemoryException) par un pointeur remis � NULL, l'exception se produit, mais impossible d'aller � l'execution du code catch..
donc, est-ce que l'execution de code � l'interieur d'un catch est limit�e � une certaines categorie de fonctions.
et comment suivre se qui se passe dans un catch en mode debug.???
en clair, la gestion des exceptions MFC marche si je leve un throw genre AfxThrowMemoryException()
, mais les exceptions 0xC0000005 par exemple ne sont pas intercept�es et ne peuvent donc pas �tre trait�es..
comment faire pour les intercepter et faire en sorte que le programme ne plante pas lamentablement...
Merci.
oui mais pour quelle environnement.?
parceque sous vc6, j'ai beau chercher, impossible de mettre la main sur o� positionnner cette option, et est elle seulement valide sous vc6??
heureusement, j'ai pu recuperer ces plantages autrement, en mettant une meilleur gestion et surveillance des process incrimin�s.
mais j'ai toujours pas de solution viable pour intercepter ce genre d'exception qui peut provenir de n'importe quelle dll ou sous process qui d�cide de peter un cable tout seul dans son coin..
finalement, en cherchant bien, il faut les mettre � la main, mais c'est dangereux, parcequ'alors, on a la responsabilit� de la gestion de TOUTES les exceptions qui sont normalement g�r�es par le syst�me, comme les exceptions de premi�re chance par exemple relatives au chargement des resources des fenetres.(ca a l'air b�te, mais certaines resources sont en lecture seules et leur lecture par le programme, qui veut un acc�s en ecriture sur ces resources, d�clenche une exception, g�r�e par le syst�me, qui recopie alors ces resources dans un emplacement ad�quat, et renvoie le handle au programme.. imaginez de devoir g�rer ca..)
si on passe dans le mode de gestion complet, il faut g�rer soit m�me tous ces evenements et un teraflop d'autres!
sans doute que je suis trop inquiet.
j'ai r�solu mes bugs et bien mieux compris un sujet qui me posait probleme..
donc, gerer les resources dans le programme et lever les erreurs par afxthrow.. pour generer l'interruption qui permet d'intercepter celle ci et de la traiter apr�s l'appel de la fonction.
ca peut paraitre idiot pour certains, mais pour comprendre et retenir, je dois TOUT comprendre du sujet. :mouarf: