trsing’s diary

勉強、読んだ本、仕事で調べたこととかのメモ。

Debugger.Launchでデバッガが立ち上がらなかった場合の修復方法

環境

Windows 10 version 2004
Visual Studio Professional 2015

現象

会社のPCにて。C#Debugger.Launch()*1を仕込んでいてもデバッガが立ち上がらなくなった。

修復方法

下記二つを実行したら立ち上がるようになった*2

  • VisualStudioのツール→オプション→デバッグ→Just-In-Time→マネージドにチェック
  • スタート→設定→アプリ→Visual Studio 2015→変更→修復

ついでにいつの間にか動かなくなっていた診断ツールも治った

調べたこととか

呼び出すデバッガの設定があるはずなのでまずはそれを調べることにした。レジスタに登録されていることがわかったので確認してみるとC:\windows\system32\vsjitdebugger.exeが登録されていた。 しかし自PCに該当のファイルは存在しなかった。

vsjitdebuggerについて調べてみると個別にインストールするものではなくVisualStudioをインストールするとき一緒にインストールされるもののようだ。

レジスタが書き換わったのではなく、何かの拍子にvsjitdebuggerが削除された可能性が高いと判断。 VisualStudioの修復で復活するかもと実行したら復活した。

原因

不明。少し前にversion 1903から2004へのアップデートが行われたのでこいつが原因かも。

参考

stackoverflow.com

stackoverflow.com

*1:デバッガーを起動し、プロセスにアタッチするメソッド

*2:一つ目は不要かも