Unbehandelte Ausnahme
-
Morgen Leute,
ich hab da mal ein Problem,
ich möchte in meinem Programm ein Dialogfenster nicht modal öffnen und tu dies auf folgende weise :
pMyDlg = new CMyDlg(); pMyDlg->SetParent(this); pMyDlg->Create(IDD_MY_DIALOG,this);
Doch bei dem aufrufen von Create bekomme ich immer folgenden fehler :
Unbehandelte Ausnahme bei 0x778a144b in TestProg.exe: Benutzerhaltepunkt.Was mache ich falsch ???
-
Ähm, schau mal in ein Tutorial
-
Der Code ist so schon richtig, habe ich aus der MSDN und aus diversen Foren,
die Ressource IDD_MY_DIALOG ist auch vorhanden, und der Aufruf erfolgt aus einem anderen Dialog.
Der fehler kommt auch nur beim Debuggen, das heißt, wenn ich das Programm einfach nur ausführe, läuft es erstmal. Doch nach einer gewissen Zeit treten Grafikfehler auf. Ich denke, das diese Grafikfehler mit den Anbehandelten Ausnahmen zusammen hängen, weil es ja um ein grafisches Objekt geht.
-
habe ich aus der MSDN
Zeigs mir! Ich weiss ja, dass auch die MSDN nicht perfekt ist, aber so krasse Fehler hab ich da noch nicht entdeckt.
-
Ich glaube aber jetzt, dass es eher an der Klasse CMyDlg liegt, das diese Klasse ein paar Probleme macht.
Wenn ich nur wüßte warum ?
Ich habe jetzt grade in der Ressource ein paar einstellungen geändert, zum Bespiel das das Fenster untergeordnet ist, jetzt tritt der Fehler nicht mehr beim create auf, aber später, wenn ich das Fenster ansprechen will um dort Daten Anzuzeigen.Hier der Auszug aus der MSDN :
CMyDialog* pDialog; void CMyWnd::OnSomeAction() { //pDialog initialized to NULL in the constructor of CMyWnd class pDialog = new CMyDialog(); //Check if new succeeded and we got a valid pointer to a dialog object if(pDialog != NULL) { BOOL ret = pDialog->Create(IDD_MYDIALOG,this); if(!ret) //Create failed. AfxMessageBox("Error creating Dialog"); pDialog->ShowWindow(SW_SHOW); } else AfxMessageBox("Error Creating Dialog Object"); }
-
Er springt mir beim Debuggen dann in die : dbgheap.c
-
So ich bin jetzt den ganzen verfluchten Quelltext mit dem Debugger durchgegangen und schmeisst mir den Fehler immer dann, wenn er das Fenster darstellen soll. Ich bin einfach ratlos.
-