25

奇妙なVisualStudio(TS 2008)の問題:特定のプロジェクトでリリースモードからデバッグモードに切り替えると、IDEが完全にフリーズします。それは、私が何かを構築したり、何かをしようとしたりする前に、切り替えたときに起こります。

私が考えることができる異常な変化なしで、すべては青から始まりました。私は解決策をきれいにしようとしましたが、それは役に立ちませんでした。

誰かが前にこれに遭遇しましたか?

4

5 に答える 5

31

すべてが正常に機能して停止した場合、通常は、気付かれずに通過したにもかかわらず、何らかの問題が発生したことを意味します。

私が次々と試すこと:

  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" /setupx64環境の場合
  7. %USERPROFILE%\AppData\[Local|Roaming]\Microsoft\VisualStudio[vs_version]いくつかの複雑なケースでは、自宅やレジストリにあるユーザー設定を削除すると便利ですHKCU\SOFTWARE\Microsoft\VisualStudio[vs_version]

すべてのものを初期状態にリセットする必要があります。それが機能しない場合は、調査する追加のツールがあります。Process Explorerをダウンロードし、IDEがフリーズしたら、Process Explorerを起動し、devenvプロセスを見つけてダブルクリックし、[スレッド]タブに移動します。フリーズの場合にどのスレッドが最大のスイッチデルタを持っているかを確認し、それをダブルクリックして、最上位の関数の名前(またはオフセット)を取得します。問題が発生する可能性のある場所に追加情報を提供します。

さらに、コントロールパネルの[プログラムの追加と削除]ウィザードでVisualStudioを修復すると役立つ場合があります。

于 2009-12-03T06:51:38.250 に答える
2

2017年にこの問題が発生しました。管理者としてVS2017を実行しましたが、機能しました。

于 2019-01-17T00:34:28.520 に答える
0

私はVS2017(15.8)でこれに遭遇しました。最新バージョン(当時は15.9)にアップグレードすると、問題が解決しました。

于 2019-09-24T13:09:49.630 に答える
0

VSは舞台裏で多くのことを行っており、プロジェクト固有のファイルをApp Dataに入れており、誰が他の場所を知っているようです。私はこの経験をしました。2つの異なるディレクトリに2セットの同一のコードがあるプロジェクトがありました。1つは本番用、もう1つは開発用です。開発プロジェクトはデバッグにぶら下がっていましたが、本番プロジェクトはそうではありませんでした。あらゆる種類の設定を試し、.suoファイルを削除しましたが、役に立ちませんでした。そこで、開発バージョンが含まれていたディレクトリの名前を変更しました。すべてがハングすることなく機能しました。

于 2020-10-27T21:38:45.447 に答える
0

私の特定のケースでは、運が悪かった他の多くの答えを試しました。これを呼び出すと、デバッガーがハングしていることがわかりました。

Log4NetExtensions.AssertFail("Error");

[ Debug > Windows > Threads ]下のスレッドウィンドウを表示し、現在のスレッドをクリックして、ハングしているコード行を参照することで、このコード行に絞り込むことができました。

于 2021-06-23T15:04:59.463 に答える