Konsole schließt sich nach CFileDialog-Aufruf nicht mehr...



  • Hallo,

    seit ein paar Tagen beschäftige ich mich mit den MFC - leider hänge ich an einem ziemlich ärgerlichen Problem. Ich habe in Visual Studio 2008 eine Win32-Konsolenanwendung erzeugt und mir einen MFC Dialog erstellt.

    Alles funktioniert soweit wunderbar - nur wenn ich einen CFileDialog öffne um einen File-Path zu laden, lässt sich das Programm nicht mehr ordentlich schließen.

    Beende ich mit ESC oder dem "X" oben rechts im Fenster, wird zwar der Dialog geschlossen, die Konsole bleibt jedoch bestehen. Sie lässt sich auch manuell nicht schließen - nur der "Task beenden"-Befehl hat eine Auswirkung.

    Hat jemand eine Ahnung woran das liegen könnte? Hier mal ein paar Code-Schnipsel zum besseren Verständnis.

    Main-Aufruf:

    int _tmain(int argc, TCHAR* argv[], TCHAR* envp[])
    {
    	int nRetCode = 0;
    aufrufen.
    	if (!AfxWinInit(::GetModuleHandle(NULL), NULL, ::GetCommandLine(), 0))
    	{
    		_tprintf(_T("Schwerwiegender Fehler bei der MFC-Initialisierung\n"));
    		nRetCode = 1;
    	}
    	else
    	{
    //hier erzeuge ich meinen Dialog
    		DLGFusion fDialog;
    		fDialog.DoModal();
    	}
    
    	return nRetCode;	
    }
    

    Aufruf des CFileDialog:

    void DLGFusion::OnBnClickedBtnopenir()
    {
    	//open a file dialog to choose a file
    	CString filename;
    
    	CFileDialog FileDlg(TRUE);
    
    	if( FileDlg.DoModal() == IDOK )
    	{}
    

    Schon das führt dazu, dass sich das Programm nciht mehr ordentlich schließen lässt. Für etwas Hilfe wäre ich super dankbar!!

    THX



  • Oh, das bin übrigends ich, hatte vergessen mich einzuloggen 😃



  • Wirklich keiner ne Ahnung wo ich was verbockt haben könnte?!?


  • Mod

    Was sagt denn der Debugger?



  • Dummerweise sag der Debugger gar nichts!
    Wenn ich den Dialog schließe bleibt die Konsole bestehen. Beende ich das Programm aus VS2008 heraus mit dem Stop-Button, gibt es keine Fehler. Wenn ich allerdings auf Pause drücke, nachdem ich den Dialog bereits geschlossen habe, meldet Visual Studio folgendes:

    Der Prozess ist deaktiviert (oder führt keinen Code im Benutzermodus aus). Alle Threads wurden beendet.


Anmelden zum Antworten