>
>
Диалог Windows Error Reporting

Павел Еремеев
Статей: 38

Диалог Windows Error Reporting

Как и для любой Windows native программы, при работе анализатора PVS-Studio (а именно процесса PVS-Studio.exe) существует вероятность возникновения программно необрабатываемого исключения, например при переполнении стека вызовов. Операционные системы семейства Windows, начиная с версии Windows Vista, при возникновении необработанного исключения в программе генерируют специальный диалог аварийного завершения работы, предлагающий закрыть или отладить такую программу.

Рисунок 1 — Диалог Error Reporting

При этом сам процесс, вызвавший генерацию подобного диалога, не будет завершен операционной системой до тех пор, пока пользователь вручную не закроет данный диалог. Такое поведение может бать нежелательно. Например, при пакетном автоматическом запуске анализатора для проверки большого объёма файлов из-под основанной на make-файлах системы сборки, появление подобного диалога вызовет остановку всей сборочной системы, что в свою очередь потребует вмешательства пользователя для продолжения её работы.

Для предотвращения генерации диалогового окна Windows Error Reporting нужно изменить значение ключа реестра HKEY_CURRENT_USER\Software\ Microsoft\Windows\Windows Error Reporting\DontShowUI на 1, однако мы не рекомендуем делать это, поскольку подобный режим работы делает невозможным идентификацию и устранение потенциальных ошибок в работе анализатора и других программ операционной системы.