Печать для записи стека файла дампа ядра, C ++ поверх окон? - PullRequest
0 голосов
/ 21 июня 2009

Когда мой процесс дает сбой, как я могу печатать, чтобы записывать в стек стек дампов памяти, C ++ поверх окон? Я знаю, что в Unix есть способ сделать это, используя некоторые обработчики сигналов, но никогда не делал это сам. Как я могу сделать это в Windows (предпочитаю не использовать ACE)?

Спасибо.

Ответы [ 3 ]

2 голосов
/ 21 июня 2009

Windows-эквивалент дампов ядра называется Minidump, и вы можете написать его, используя MiniDumpWriteDump . Здесь есть статья о проекте кода: http://www.codeproject.com/KB/debug/postmortemdebug_standalone1.aspx

0 голосов
/ 21 июня 2009

Если вы ищете стекового бродилки, посмотрите на этот , созданный Йохеном Кальмбахом. При запуске это позволит вам записывать трассировку стека любым удобным вам способом. Однако наиболее распространенный способ - попросить Windows создать дамп (полный или мини).

0 голосов
/ 21 июня 2009

Вы можете установить свой собственный обработчик исключений верхнего уровня и пройтись по стеку, используя библиотеку dbghelp, чтобы получить стек вызовов. Вы также можете создать аварийный дамп приложения этим способом.

...