Я пытаюсь отладить программу, которая неожиданно закрывается. То, когда я говорю, "закрывается, я имею в виду один момент, я вижу, что все окна отображены, каждый из которых показывает все правильные данные, затем внезапно, все окна исчезают. Никакого messagebox создание отчетов о чем-то не так. Таким образом, я пытался запустить программу в отладчике, надеясь, что это так или иначе захватит то, что заставляло программу прерываться, но даже в отладчике программа просто заканчивается резко. Последняя строка в отладчике:
The program '[5500] test.exe: Native' has exited with code 0 (0x0).
Моя программа, которая является чрезвычайно большой и чрезвычайно старой, имеет много из сам диагностика. Мое подозрение - то, что, возможно, сам тест перестал работать, и возможно я просто назвал "выход ()", забыв открываться диалоговое окно, объясняющее почему.
Мой вопрос теперь, как я могу найти из который точка в коде, моем выходе программы?
Ответ Марсело великолепен. Если по какой-то причине вы не можете прервать выход
, установите функцию (не принимает аргументов, возвращает void) с помощью atexit
и прервите ее.
Установите точку останова на exit ()
и terminate ()
(возможно, один вызывает другой, но я не уверен).