- Добавить запись реестра WER
- Завершить процесс
- Запустите свой самописный инструмент, который
3a) находит процесс werfault.exe и
3b) присоединиться к этому процессу (дождаться его завершения)
- Анализ файла дампа
Шаг 3b не использует опрос. Процесс - это объект синхронизации, который получает сигнал.
Обратите внимание, что шаг 3a не будет работать до сбоя, и если аварийный дамп небольшой, werfault.exe, возможно, уже завершился, поэтому он может ждать вечно. Чтобы обойти это, вы можете зарегистрировать свое приложение в качестве отладчика для werfault.exe, который внутренне перенаправляет аргументы в werfault.exe и затем ожидает его завершения.
Полная последовательность выглядит следующим образом:
- Добавить запись реестра WER
- Добавить запись отладчика для werfault.exe
- Завершить процесс
- Вместо werfault.exe ваше приложение будет работать.
4a) Запустите werfault.exe, чтобы создать дамп и
4b) присоединиться к этому процессу (дождаться его завершения)
- Может быть, удалить запись отладчика, если вы не хотите, чтобы она постоянно
- Анализ файла дампа
Наконец, я бы сказал, что вы можете достичь своей цели с некоторыми усилиями по реализации. Вопрос в том, сколько секунд это сэкономит и сколько часов потребуется для реализации?