Несколько недель назад на ноутбуке моей компании начались странные проблемы. Я больше не мог запускать Microsoft Developer Web Server (через Visual Studio-> Debug). Позже я понял, что не могу выполнить ни одно приложение .NET.
Говоря со специалистом Microsoft CLR после просмотра моих dmp-файлов, он сказал
При загрузке в ваш процесс 8 байтов со смещением 0 × 168 в .exe
файлы устанавливаются на 0. Это
проблема, которая вызывает сбой CLR.
Эти биты установлены правильно в
файл, который вы мне предоставили.
C: \ Windows \ System32 \ Detoured.dll - это
загружен в процесс. Это значит
мне, что обходная библиотека в настоящее время
используется на вашей машине, чтобы изменить
Поведение этих процессов.
Я также выяснил, что при загрузке в безопасном режиме все работает.
Кроме того, я выяснил, что если я щелкну правой кнопкой мыши по исполняемому файлу .NET и выберу «Запуск от имени» и введу учетные данные пользователя, вошедшего в систему. Это просто не работает, если я просто дважды щелкну по приложению.
Там много сообщений о системных событиях и ошибок типа доктора Ватсона. Вот несколько, которые я получаю:
При запуске MS Developer Web Server из Visual Studio появляется всплывающее окно с сообщением:
WebDev.WebServer40.exe has encountered a problem and needs
to close. We are sorry for the inconvenience.
Записи системного журнала VSHost:
Event 1:
Application: MyWebSite.vshost.exe
Framework Version: v4.0.30319
Description: The process was terminated due to an internal error
in the .NET Runtime at IP 791A8BBD (79140000) with exit code 80131506.
Event 2:
Faulting application MyWebSite.vshost.exe, version 10.0.30319.1,
stamp 4ba2084b, faulting module clr.dll, version 4.0.30319.1,
stamp 4ba1d9ef, debug? 0, fault address 0x00068bbd.
Записи в системном журнале событий для запуска сторонних приложений:
Source: Application Popup
Description: Application popup: #APPNAME#.exe – Application Error : The
application failed to initialize properly (0xc000007b). Click on OK to terminate
the application.
Приложения, которые я создал и используют системные журналы событий .NET v4 Framework, говорят:
Source: .NET Runtime
Framework Version: v4.0.30319
Description: The process was terminated due to an internal error in the
.NET Runtime at IP 791A8BBD (7914000) with exit code 80131506.
Приложения, которые я создал и используют системные журналы событий .NET v2 Framework, говорят:
Source: .NET Runtime
Description: .NET Runtime version 2.0.50727.3053 – Fatal Execution
Engine Error (7A097706) (80131506)
Вот подробностей в моем блоге .
Как я могу выяснить, какой процесс вызывает проблему, а затем исправить компьютер?