Fehlerausgabe umleiten?
Verfasst: Mittwoch 20. Oktober 2010, 22:42
Hallo,
kurz zur aktuellen Lage: Python 2.7 wird in ein Spiel integriert.
Problem: Falls Fehler auftreten, werden diese nicht in der Console des Spiels angezeigt.
Das komische daran ist aber, dass alles was ich mit "print" schreibe, sehr wohl in der Console des Spiels angezeigt wird?!
Wie leite ich nun die Tracebacks auf die Console um? Jedes mal einkann doch nicht die Lösung sein, oder?
Habe schon versucht, dass ``traceback``-Module umzuschreiben:
Aber das ändert nichts, Fehler werden nicht angezeigt :/
Bin dankbar für Tipps!
Gruß
kurz zur aktuellen Lage: Python 2.7 wird in ein Spiel integriert.
Problem: Falls Fehler auftreten, werden diese nicht in der Console des Spiels angezeigt.
Das komische daran ist aber, dass alles was ich mit "print" schreibe, sehr wohl in der Console des Spiels angezeigt wird?!
Wie leite ich nun die Tracebacks auf die Console um? Jedes mal ein
Code: Alles auswählen
if (PyErr_Occured())
{
PyErr_Print();
}
Habe schon versucht, dass ``traceback``-Module umzuschreiben:
Code: Alles auswählen
PyObject *pyTraceback = PyImport_ImportModule("traceback");
if (pyTraceback)
{
PyObject *pyPrintException = PyObject_GetAttrString(pyTraceback, "print_exception");
if (pyPrintException)
{
PySys_SetObject("excepthook", pyPrintException);
Py_DECREF(pyPrintException);
}
Py_DECREF(pyTraceback);
}
Bin dankbar für Tipps!
Gruß