Как отследить синий экран смерти, вызванный приложением (пользовательский режим) - PullRequest
1 голос
/ 18 декабря 2009

У нас есть приложение .Net, состоящее из смешанного управляемого и неуправляемого кода. У нас есть ряд отчетов о том, что пользователи получают BSOD при использовании нашего приложения. Эти синие экраны встречаются в разных версиях Windows. В основном XP, но один пользователь утверждает, что это происходит в Windows 7. Некоторые пользователи видят, что это происходит при выполнении одной вещи, другие видят, что это происходит при выполнении чего-то совершенно другого. Конечно, мы не можем воспроизвести проблему.

Само собой разумеется, я в тупике. Приложение пользовательского режима не должно иметь возможности отображать синий экран ОС, поэтому мы сталкиваемся с ошибкой в ​​обычном приложении пространства ядра, возможно, с ошибкой антивирусного программного обеспечения?

У кого-нибудь есть советы, как отследить что-то подобное? У нас нет доступа к компьютеру, на котором это происходит, поэтому мы не сможем подключить отладчик ядра или что-то подобное.

Ответы [ 3 ]

2 голосов
/ 18 декабря 2009
1 голос
/ 18 декабря 2009

Единственное, что вы можете сделать, это убедить пользователей отправить вам данные:

  • Аварийные свалки. Разместите пошаговое руководство на своем веб-сайте, показывающее, как включить полные / мини-дампы и где их найти. Вот статья KB с подробностями - вероятно, хотите упростить это с помощью скриншотов и т.
  • Установленное программное обеспечение. Лучше всего найти инструмент, который собирает эту информацию для них; люди не особенно надежны или основательны. WinAudit выглядит хорошо .
  • Установленное оборудование и драйверы. (То же самое)
0 голосов
/ 18 декабря 2009

Можете ли вы получить копию аварийного / мини-дампа?

Если это так, вы можете использовать WinDbg и SOS , чтобы выяснить, где находится код, когда он взорвется.

Тесс Фернандес ведет хороший блог по управляемой отладке с помощью инструментов низкого уровня.

...