neuer FileDialog
-
Hallo,
ich hab mitCFileDialog FD(TRUE); FD.m_ofn.lpstrTitle = "Waschprogramm öffnen..."; FD.m_ofn.Flags = OFN_EXPLORER | OFN_OVERWRITEPROMPT | OFN_HIDEREADONLY | OFN_EXTENSIONDIFFERENT; FD.m_ofn.lpstrDefExt = "iwm"; FD.m_ofn.lpstrFilter = "Waschprogramm (*.iwm)\0*.iwm\0"; BOOL nRet = (BOOL)FD.DoModal(); if (nRet == IDOK) { CFile f(FD.m_ofn.lpstrFile, CFile::modeRead | CFile::shareDenyWrite | CFile::typeBinary); usw..... }
einen File Open Dialog gemacht. Mein Problem ist nun, wenn ich im Release Modus mein Programm laufen lass, dann geht alles. Im Debug Modus fliegt er bei:
BOOL nRet = (BOOL)FD.DoModal(); raus.
Kann mir hier einer weiterhelfen??
Ich danke jetzt schon mal allen
Gruß Dscho
-
Hi!
Die Informationen sind sehr mager.
Wie fliegst Du denn raus ?
Ich schätze mal das es eine Debug Assert ist weil irgendwas NULL ist.
Schau mal im FAQ da gibt es einen Beitrag zu release und debug Version.
Wenn das nicht hilft (aber wirklich da mal rein schauen ;o) schreib mal was für ein Fehler auftritt wenn Du "fliegst"
-
Versuchs mal so:
CFileDialog FD( TRUE, "iwm", NULL, OFN_HIDEREADONLY | OFN_OVERWRITEPROMPT, "Waschprogramm (*.iwm)\0*.iwm\0");
P.S.
BOOL nRet = (BOOL)FD.DoModal(); if (nRet == IDOK)
funzt zwar in Visual C++, ist aber kein gültiger C++-Code!
-
Danke erstmal.
@ RenéG ich habs ausprobiert, aber es hat nicht hingehauen
1. es war kein neuer Filedialog mehr
2. es wurden keine Dateien mehr angezeigt
3. er ist trotzdem rausgeflogen
ich hab eine bischen mit den Flags rumgespielt und hab festgestellt, wenn ich OFN_ENABLEHOOK setze, dann gehts im Debug Modus, aber bei Release nicht.
Er fliegt in der Datei dlgfile.cpp rausINT_PTR CFileDialog::DoModal() { ASSERT_VALID(this); ASSERT(m_ofn.Flags & OFN_ENABLEHOOK); //hier schmiert er ab ASSERT(m_ofn.lpfnHook != NULL); // can still be a user hook usw....
ich verstehs nicht.
Ach ja kannst Du mir genau sagen was kein gültiger C++ Code ist? Ich vermute ja mal das (BOOL)FD.DoModal() aber ich weiß es nicht so genau.
-
ich würde mal reindebbugen.... is sicher ne assertation.....