Unhandled Exception abfangen
-
Hallo!
Habe folgendes Problem:Ich lade die Daten aus der Datei und zeige sie in einem Dialog an.
Wenn aus der Datei nur Müll kommt, stürtzt
mein Programm an der Stelle, wo ich die Daten anzeigen will
wegen eines speicherzugriffs-Fehlers.Mein Programm
GetDlgItem(ID_M_FILESEL)->EnableWindow(TRUE);wincore.cpp
lResult = pWnd->WindowProc(nMsg, wParam, lParam);jetzt versuche ich mit dem Konstrukt
try { } catch(...){Kontrolliert beenden.}
alle Exceptions, die kommen könnten abzufangen.
Die gelingt aber nicht
Was könnte ich machen?
-
Bau Deinen Parser anständig, dass er nicht abschmiert.
try/ctach fängt im normalfall nicht alle Exceptions, sondern nur die Software Exceptions.
Bevor ich auf SetUnhandledExceptionFilter eingehe befolge meinen Rat oben!
Begründung:
Wenn eine Unhandled Exception auftritt oder ein Speicherzugriffsfehler, wie kommst Du darauf alles wird gut, wenn Du den Fehler abfängst. Wenn Dein AlgorithmusSpeicher überschreibt wird es nicht besser wenn Du die Exception dazu abfängst. Du doktorst nur an den Sympthomen.
Beseitige die Ursache!