CAboutDlg Probleme
-
Hallo an alle.
Ich habe da ein sehr blödes Problem, oder besser zwei.1. Wenn ich meinen "AboutDlg" in der Debug Version aufrufen will bricht das Programm an einer stelle immer ab, oder besser; es gibt einen Fehler, der durch drücken von "F5" übersprungen wird, und nach ner halben sekund wieder erscheint.
An folgender stelle tritt der fehler auf.
#ifdef _DEBUG void CHandleMap::RemoveHandle(HANDLE h) { // make sure the handle entry is consistent before deleting CObject* pTemp = LookupTemporary(h); if (pTemp != NULL) {// HIER DRIN STEIGT ER IRGENDWO AUS // temporary objects must have correct handle values HANDLE* ph = (HANDLE*)((BYTE*)pTemp + m_nOffset); // after CObject ASSERT(ph[0] == h || ph[0] == NULL); if (m_nHandles == 2) ASSERT(ph[1] == h); } pTemp = LookupPermanent(h); if (pTemp != NULL) { HANDLE* ph = (HANDLE*)((BYTE*)pTemp + m_nOffset); // after CObject ASSERT(ph[0] == h); // permanent object may have secondary handles that are different } // remove only from permanent map -- temporary objects are removed // at idle in CHandleMap::DeleteTemp, always! m_permanentMap.RemoveKey((LPVOID)h); } #endif
(in der winhand.cpp)
2. Ich wollt in meinem "AboutDlg" die Funktion "OnInitDialog" einfügen, aber das klappt nicht. Der KlassenAssi sagt zwar er hat es gemacht, aber seltsamerweise packt er den Funktionsrumpf in ein ander (nachträglich eingefügte) Klasse, und nicht in meine Hauptklasse, wo es hingehört.
Hat einer eine Idee???