Задать вопрос

Как ловить ошибку вылета программы?

Всем привет!
Пишу программу на PyQt. Программа достаточно большая (Для меня).
При тесте постоянно через дебагер ловлю и исправляю ошибки! (Но все я не могу проверить)
Но когда я отдам программу работникам они будут дебагера. И при ошибке программа просто закрывается!
Вопрос: Как показать или записать где произошла ошибка и почему?

П.С. Программа у меня начинается так:
app = QApplication(sys.argv)
main = form.main_window.MainWindow()
sys.exit(app.exec_())


В моем случае решение такое: (Показывает где точно произошла ошибка и когда + пишет в фаил)
import sys, traceback
from datetime import datetime


def my_excepthook(t, v, tb):
    with open('1.txt', 'a') as f:
        f.write("\n---===Error===---\n")
        f.write("Time = %s\n" % datetime.now().strftime("%d.%m.%Y"))
        traceback.print_exception(t, v, tb, file=f)


sys.excepthook = my_excepthook

app = QApplication(sys.argv)
main = form.main_window.MainWindow()
sys.exit(app.exec_())
  • Вопрос задан
  • 430 просмотров
Подписаться 1 Оценить Комментировать
Решения вопроса 1
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы
от 200 000 до 300 000 ₽
Greenway Global Новосибирск
от 150 000 ₽
Akronix Санкт-Петербург
от 150 000 до 200 000 ₽
24 янв. 2025, в 13:59
1000 руб./за проект
24 янв. 2025, в 13:49
20000 руб./за проект
24 янв. 2025, в 13:46
100000 руб./за проект