2012年2月17日金曜日

JIT デバッガの設定によるエラー

Soluto をアンインストールした後、あるアプリケーションを起動していると、以下のエラーが表示される。

登録された JIT デバッガを使用できません。以下のコマンドで JIT デバッガを起動しようとして、エラーコード XXXXXX が発生しました。

XXXXXX …

デバッガを手動でアタッチする間処理を待機させるには、[再試行] をクリックしてください。
JIT デバッグ要求を中止するには [キャンセル] をクリックしてください。

.NET Framework を再インストールしたけれど、エラーは表示され続ける。

JIT アタッチ デバッグの有効化 によると、

アプリケーションにマネージ コードが含まれている場合は、共通言語ランタイムが同様のダイアログを表示し、デバッガを JIT アタッチします。このオプションを制御するレジストリ キーは HKEY_LOCAL_MACHINE\Software\Microsoft\.NETFramework\DbgJITDebugLaunchSetting です。

  • .NET Framework のバージョン 1.0 および 1.1 の場合、または Windows 98 と Windows Me での .NET Framework Version 2.0 の場合には、メッセージ ボックスに次のオプションが表示されます。

    • 続行。コンソールにスタック ダンプが出力され、プロセスが終了します。

    • デバッガのアタッチ。この場合、ランタイムは、DbgManagedDebugger レジストリ キーに登録されているデバッガを呼び出します。デバッガが見つからなかった場合は、プロセスが終了します。

上記を参考にして、レジストリエディタを起動し、

  • HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\.NETFramework\DbgManagedDebugger

の値を確認。その結果、エラー内容に含まれる文字列が含まれていたので、この値を削除した。

これにより、エラーが表示されなくなった。