Access-Violation bei Zuweisung von Membervariable <-> Steuerelement-ID



  • Ich habe mit dem MFC-Assistent eine bialogbasierte Anwendung erstellt.
    Auf den Dialog habe ich ein Textfeld geschoben und diesem eine Steuerelement-ID vergeben. Wenn ich das Programm in dem Zustand starte, funktioniert es noch einwandfrei. Wenn ich jetzt aber der Steuerelement-ID des Textfeldes im MFC-Klassenassisten eine Membervariable zuweise, bekomme ich beim Ausführen des Programms eine Access-Violation an der (unten) markierten Stelle:
    [cpp]/////////////////////////////////////////////////////////////////////////////
    // CFLB_EDITApp Initialisierung

    BOOL CFLB_EDITApp::InitInstance()
    {
    AfxEnableControlContainer();

    // Standardinitialisierung
    // Wenn Sie diese Funktionen nicht nutzen und die Größe Ihrer fertigen
    // ausführbaren Datei reduzieren wollen, sollten Sie die nachfolgenden
    // spezifischen Initialisierungsroutinen, die Sie nicht benötigen, entfernen.

    #ifdef _AFXDLL
    Enable3dControls(); // Diese Funktion bei Verwendung von MFC in gemeinsam genutzten DLLs aufrufen
    #else
    Enable3dControlsStatic(); // Diese Funktion bei statischen MFC-Anbindungen aufrufen
    #endif

    CFLB_EDITDlg dlg;
    m_pMainWnd = &dlg;
    int nResponse = dlg.DoModal();
    if (nResponse == IDOK)
    {
    // ZU ERLEDIGEN: Fügen Sie hier Code ein, um ein Schließen des
    // Dialogfelds über OK zu steuern
    }
    else if (nResponse == IDCANCEL)
    {
    // ZU ERLEDIGEN: Fügen Sie hier Code ein, um ein Schließen des
    // Dialogfelds über "Abbrechen" zu steuern
    }

    // Da das Dialogfeld geschlossen wurde, FALSE zurückliefern, so dass wir die
    // Anwendung verlassen, anstatt das Nachrichtensystem der Anwendung zu starten.
    return FALSE;
    }[/cpp]

    Weiß jemand einen Rat?



  • Zeig mir mal den code vom der Dialogklasse h und cpp bitte ...



  • debugge mal in den konstruktor und oninitdialog rein.....



  • Das Ganze hat sich mittlerweise erledigt.
    Ich habe einfach ein neues Projekt erstellt, die entsprechenden Steuerelemente neu angelegt und die schon fertigen Codeschnipsel reinkopiert...

    Jetzt gehts ohne Probleme!


Anmelden zum Antworten