try, catch



  • Hallo
    also ich habe den code

    try
     {
     StringList->LoadFromFile("datei.txt");
     }
    catch(...)
     {
     ...
     }
    

    Meine Frage ist: Was muss ich im catch-teil eintragen damit das Programm einfach fort fährt? also ohne die datei



  • Naja, nichts halt.



  • Dazu hab ich auch eine Frage. Und was müsste man eintragen in den catch teil wenn man den Fehler ausgeben wollen würde?



  • Das was den Fehler ausgibt

    Wie möchtest du den Fehler ausgeben??

    Messagebox??



  • In der FAQ unter "Drucker" gibt's ein Beispiel zum Umgang mit Exceptions.



  • Ja ich hätte gerne eine Messageboxausgabe.

    Soweit bin ich auch schon, aber ich bekomme vor der Messagebox immer noch die Fehlermeldung separat. Und das Programm hält an. Ich möchte aber das das Programm durchläuft und mir nur die Messagebox zeigt, die ich dann wegklicken kann.

    try
            {
            FILINGSYSTEM->Query1->ExecSQL();
            }
            catch(EDBEngineError *dbError)
            {
              MessageBox(NULL, dbError->Message.c_str(), "catch:", MB_OK);
            }
    


  • Die Meldung kommt vom Debugger. Du kannst sie in den Optionen abstellen. Ist aber nicht sinnvoll. Sobald Du die Anwendung als 'endgültig' kompilierst, werden nur noch Deine Fehlermeldungen angezeigt.

    Übrigens erhälst Du im catch-Block keinen Zeiger auf ein Fehlerobjekt, sondern eine Referenz. catch (EDBEngineError &Err)



  • Oh ach so! Danke! Dann ist alles klar.


Log in to reply