Absturz beim Start debuggen?



  • Hallo zusammen,

    bei meinem Programm habe ich wohl ein wenig oft Dialogelemente gelöscht und
    erstellt. Und wie üblich, wenn da was nicht komplett gelöscht ist, stürzt mein
    Program nun unter Debug ab, wenn der Dialog initializiert wird.
    Also wenn in der MyApp.cpp (nicht MyAppDlg.cpp) der MyAppDlg erzeugt wird kommt
    ein Assembly crash.

    BOOL CMyAppApp::InitInstance()
    {
    	// InitCommonControlsEx() ist für Windows XP erforderlich, wenn ein Anwendungsmanifest
    	// die Verwendung von ComCtl32.dll Version 6 oder höher zum Aktivieren
    	// von visuellen Stilen angibt. Ansonsten treten beim Erstellen von Fenstern Fehler auf.
    	INITCOMMONCONTROLSEX InitCtrls;
    	InitCtrls.dwSize = sizeof(InitCtrls);
    	// Legen Sie dies fest, um alle allgemeinen Steuerelementklassen einzubeziehen,
    	// die Sie in Ihrer Anwendung verwenden möchten.
    	InitCtrls.dwICC = ICC_WIN95_CLASSES;
    	InitCommonControlsEx(&InitCtrls);
    
    	CWinApp::InitInstance();
    
    	AfxEnableControlContainer();
    
    	// Standardinitialisierung
    	// Wenn Sie diese Features nicht verwenden und die Größe
    	// der ausführbaren Datei verringern möchten, entfernen Sie
    	// die nicht erforderlichen Initialisierungsroutinen.
    	// Ändern Sie den Registrierungsschlüssel, unter dem Ihre Einstellungen gespeichert sind.
    	// TODO: Ändern Sie diese Zeichenfolge entsprechend,
    	// z.B. zum Namen Ihrer Firma oder Organisation.
    	SetRegistryKey(_T("Vom lokalen Anwendungs-Assistenten generierte Anwendungen"));
    
    	CMyAppDlg dlg;   <---------- hier crash
    	m_pMainWnd = &dlg;
    	INT_PTR nResponse = dlg.DoModal();
    

    Nun, wie kann ich MFC schrittweise beim Erstellen der Dialogelemente durchgehen um das fehlerhafte Element zu finden. Ich würde gerne einen Debug Punkt setzen.
    Oder gibt es andere Möglichkeiten?

    Grüße
    TheNoName


  • Mod

    Und was sagt der Callstack? Du kannst doch genau sehen, was initialisiert wird und wo es kracht!



  • Danke, das hat geholfen !


Anmelden zum Antworten