他プロセスから起動されるアプリケーションの、起動時のデバッグ
VisualStudio2008で開発していて困ったことが発生。
他プロセスから起動されるのが前提のアプリケーションは、起動後ならプロセスへのアタッチでデバッグできるが、起動時にアプリケーションエラーがあって、起動すらしない。
他プロセスから起動されるのが前提のアプリケーションの、起動時のデバッグはどうやるのか調べてみた。
方法 : デバッガを自動的に起動する
http://msdn.microsoft.com/ja-jp/library/a329t4ed(VS.80).aspx
レジストリエディタを開き
HKEY_LOCAL_MACHINE\Software\Microsoft\Windows NT\currentversion\image file execution options
に、
新しいキーでデバッグ対象の実行ファイルの名前を入れる。"aaa.exe"とか。
そのキーに新しい文字列値を追加し、名前を"debugger"、
内容を"vsjitdebugger.exe"とする。これだけ。
要するに、レジストリにデバッグしたいアプリを登録しておくと、
起動時に自動的にJust-in-timeデバッグによりデバッグ対象となるらしい。
起動時に、どのデバッガで開くかを聞かれるので、VisualStudioで該当プロジェクトを開いておいて、それを選択するとソースコードを見ながら簡単にデバッグできた。