Visual Studio зависает при переключении в режим отладки

Странная проблема Visual Studio (TS 2008): среда IDE полностью зависает, когда я переключаюсь из режима выпуска в режим отладки в конкретном проекте. Это происходит сразу после того, как я переключаюсь, прежде чем я попытаюсь построить или сделать что-нибудь еще.

Все началось совершенно неожиданно, без каких-либо аномальных изменений, о которых я могу думать. Я пытался очистить раствор, но это не помогло.

Кто-нибудь сталкивался с этим раньше?


person cvb    schedule 02.12.2009    source источник
comment
У меня есть эта проблема в большом решении (148 проектов) в VS2012. Когда я переключаюсь с Debug на Release, он зависает.   -  person tofutim    schedule 04.12.2013
comment
У меня аналогичная проблема с VS 2019   -  person Eniola    schedule 03.10.2019


Ответы (5)


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

Я бы попробовал одно за другим:

  1. Проверьте, какие файлы были изменены (почему и как) после обновления из системы управления версиями
  2. Просмотрите список расширений и плагинов. Попробуйте отключить все или некоторые из них
  3. Закройте Visual Studio и завершите все процессы разработки: devenv, mspdbsrv, vcpkgsrv, msbuild, msvsmon, vshub, vstest и т. Д.
  4. Удалите .suo, .ncb, .VC.db, .VC.VC.opendb файлы решения, а также каталог .vs, которые иногда вызывают проблемы.
  5. Удалите файлы настроек проекта, типа YourProjectName.vcproj.DOMAINNAME.LOGINNAME.user или YourProjectName.csproj.user. Имя файла настроек зависит от типа используемого вами проекта.
  6. Запустите "C:\Program Files\Microsoft Visual Studio [vs_version]\Common7\IDE\devenv.exe" /setup или "C:\Program Files (x86)\Microsoft Visual Studio [vs_version]\Common7\IDE\devenv.exe" /setup для среды x64
  7. В некоторых сложных случаях помогает удалить пользовательские настройки, находящиеся дома %USERPROFILE%\AppData\[Local|Roaming]\Microsoft\VisualStudio[vs_version] и в реестре HKCU\SOFTWARE\Microsoft\VisualStudio[vs_version]

Он должен вернуть все в исходное состояние. Если это не сработает, есть дополнительные инструменты для расследования. Загрузите Process Explorer, и как только IDE зависнет, запустите Process Explorer, найдите процесс devenv, дважды щелкните его и перейдите на вкладку Темы. Проверьте, какой поток имеет наибольшую дельту переключения в случае зависания, дважды щелкните по нему и возьмите имя (или смещение) верхней функции. Это дает дополнительную информацию о том, где может быть проблема.

Более того, иногда помогает восстановить Visual Studio с помощью мастера «Установка и удаление программ» в Панели управления.

person Anton K    schedule 03.12.2009

Была эта проблема в 2017 году. Я запустил VS 2017 как администратор, и это сработало.

person Michael    schedule 17.01.2019

Я столкнулся с этим в VS 2017 (15.8). Обновление до последней версии (на тот момент 15.9) решило проблему.

person Raf    schedule 24.09.2019

VS, похоже, многое делает за кулисами и помещает файлы для конкретного проекта в данные приложения и неизвестно куда еще. У меня был такой опыт: у меня был проект, в котором было два набора идентичного кода в двух разных каталогах: один для производства, один для разработки. Проект разработки начал зависать на отладке, производство - нет. Пробовал всевозможные настройки и удаление файлов .suo, но безрезультатно. Итак, я переименовал каталог, в котором находилась разрабатываемая версия, и все работало без зависаний.

person user13296964    schedule 27.10.2020

В моем конкретном случае я безуспешно пробовал много других ответов. Оказалось, что при вызове этого отладчик зависал:

Log4NetExtensions.AssertFail("Error");

Мне удалось сузить его до этой строки кода, открыв окно потоков под [ Debug > Windows > Threads ] и щелкнув текущий поток, чтобы перейти к строке кода, на которой он висел.

person Contango    schedule 23.06.2021