Как настроить windows для создания дампа ядра из приложения?

Как настроить windows для создания дампа ядра из приложения?

Я использую Win xp, и приложение построено с помощью Visual Studio 2003.

6 ответов


Microsoft имеет бесплатный инструмент под названием Userdump.exe который сделает это.

довольно просто использовать этот инструмент для создания дампа (.DMP) файл для процесса, который завершает работу с исключением или для создания файла дампа для висящего процесса


просто, чтобы добавить некоторые другие предложения:

  • ProcDump это часть MS Sysinternals suite (он захватывает сбои, но также делает нагрузку больше, может принимать дампы, если использование процессора всплески в течение некоторого времени и т. д.)
  • вы можете поместить код в свой exe, используя MiniDumpWriteDump, чтобы сохранить дампы самостоятельно (что я сделал в нескольких инструментах). У вас есть контроль над именем и местоположением (т. е. сетевой путь). Есть пример кода здесь

вы можете попробовать использовать WinDbg, как описано здесь.


можно использовать adplus для создания аварийного дампа для запущенного приложения. Команда может выглядеть примерно так:

C:\Program Files\Debugging Tools for Windows\adplus.vbs -hang -do -o c:\ -quiet -pn theprocess.exe

вы также можете подключиться к процессу с помощью windbg и запустить эту команду:

.dump /ma c:\somepath\filename.dmp

вы можете открыть Диспетчер задач (щелкнув правой кнопкой мыши панель задач), найти свой процесс на вкладке Процессы, щелкните его правой кнопкой мыши и выберите Создать Файл Дампа.


Я отсылаю вас к следующему MS KB article на эту тему. Обычно файл дампа отлаживается с помощью одного из инструментов отладки Windows, например WinDbg. Есть много статей в интернете, описывающих как это сделать.