Hallo, ich habe hier einen etwas seltsamen Fehler bei Aufruf von DoModal(): Debug Assertion Failed und zwar meckert er in der Datei: afxwin1.inl
Ich mach folgendes ganz einfaches:
Ich habe eine ATL-Com Anwendung wo ich ein Com Addin (dll) erstelle. Hier läuft auch noch die MFC mit. In diesem Projekt habe ich dann einen MFC-Dialog mit dem Assistenten erstellt und auch eine neue Klasse (Basis CDialog) . In einer anderen Klasse (in die cpp-Datei) includiere ich nun den Header der neu erstellten Dialogklasse und erstelle in einer Funktion ein Objekt und rufe DoModal auf und dann stürzt er ab.
Hier sind die Zeilen wo er einen Fehler meldet:
C++:
//Das ganze kommt von .Net INT_PTR CDialog::DoModal() { // can be constructed with a resource template or InitModalIndirect ASSERT(m_lpszTemplateName != NULL || m_hDialogTemplate != NULL || m_lpDialogTemplate != NULL);
// load resource as necessary LPCDLGTEMPLATE lpDialogTemplate = m_lpDialogTemplate; HGLOBAL hDialogTemplate = m_hDialogTemplate; HINSTANCE hInst = AfxGetResourceHandle(); //Hier bleibt er stehen ... }
DKlasse dialog; dialog.DoModal() //hier kommt der Fehler