Fehlermeldung
-
Hallo,
wenn ich mein programm im Debug Modus starte und teste, danach beende habe ich
im Ausgabefenster vom Compiler eine Meldung stehen. Weiß jemand was das bedutet:
"Eine Ausnahme (erste Chance) bei 0x004f066f in Waeschereiverwaltung.exe: 0xC0000005: Zugriffsverletzung-Leseposition 0x00000000."Das Programm schmiert nicht ab. Es läuft fehlerfrei.
Danke im voraus
-
Zugriffsverletzung. Du greift z.B. auf etwas zu was nicht existiert.
ermurlich im Destructor.
Debugge ma dein Programm bis zum schluss ind schaue nach ob irgendein Zeiger NULL ist auf den du zugreifst.
-
Hallo,
hat etwas länger gedauert, aber ich dachte auch mal zwischenzeitlich ich hätte den Fehler gefunden aber dem war nicht so.CAssistent Assistent("Assistent"); CPage1* pPage1 = new CPage1; CPage2* pPage2 = new CPage2; Assistent.AddPage(pPage1); Assistent.AddPage(pPage2); Assistent.DoModal(); // hier kommt die Meldung im Ausgabefenster delete pPage1; delete pPage2;
CPage1 und 2 sind von CPropertyPage abgeleitet
Assistent ist von CPropertySheet abgeleitet
ich weiß nicht wo der Fehler liegt
-
ich habe auch noch festgestellt, dass alle hWnd = 0 sind.
Ist das so richtig ??
-
Da der Fehler in DoModal() kommt, muss wohl innerhalb Deiner Pages der Fehler liegen, wahrscheinlich irgendwo während OnInitDialog oder so!
-
kann denke ich nicht sein, bei OnInitDialog steht nur
CPropertyPage::OnInitDialog(); return TRUE; // return TRUE unless you set the focus to a control // AUSNAHME: OCX-Eigenschaftenseite muss FALSE zurückgeben.
Also das, was mein Compiler reinschreibt. Ich glaube, dass das Problem vor DoModal liegt, da die Variable hWnd = 0 ist. Kann das nicht sein??
-
Wenn das Problem vor DoModal liegen würde, hätte ich es schon gesagt.
-
Ok aber hast du auch nen Tip wie ich den Fehler finden soll, da in OnInit ja nur das steht, was der Compiler anlegt, und auch sonst ist das gesamte Dialogfeld leer (kein eigener Code). Sorry wenn ich es nochmal anspreche, aber was ist mit dem hWnd, ist das richtig??
Ich bin für jede Hilfe offen
-
Ich verweise auf die MSDN
CStylePage stylePage; CColorPage colorPage; dlgPropertySheet.AddPage(&stylePage); dlgPropertySheet.AddPage(&colorPage); dlgPropertySheet.DoModal();
Da dies syntaktisch der gleiche Code wie Deine Codezeilen ist, muss der Fehler irgendwo anders in Sheet oder Page liegen !
-
Vielen Dank erstmal ich hab mir das Beispiel angeschaut und siehe da es kommt kein Fehler. Ich werde meinen Code mal Buchstabe für Buchstabe durchgehen, wenn ich etwas finde werde ich es posten. Aber irgendwie so im inneren glaube ich, dass ich genau den gleichen Code wie in der MSDN hab.
Aber trotzdem Vielen Dank
-
Neucoden hilft meistens zu 80 % Prozent bei mir bei soclehn Fällen. Also den wichtigen Bereich der betroffen ist