プロセスの開始からデバッグしたいとき、プロセスが起動してからアタッチしても遅いので、プロセスの開始時にデバッガーアタッチする方法です。
こちらを参照しています。
事後デバッグを有効にする
https://docs.microsoft.com/ja-jp/windows-hardware/drivers/debugger/enabling-postmortem-debugging
■レジストリ操作
"Image File Execution Options" にデバッガでアタッチする被検査プログラムをキーとして追加します。
名前"Debugger"で、値はデバッガーを指定します。
例)キー
Hoge.exe
レジストリ
Windows Registry Editor Version 5.00
[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Image File Execution Options\Hoge.exe]
Debugger="C:\\WINDOWS\\system32\\vsjitdebugger.exe"
名前"Auto"で、値は"1"を指定します。
64ビットアプリ、32ビットアプリで異なります。
レジストリ
Windows Registry Editor Version 5.00
[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\AeDebug]
Auto="1"
[HKEY_LOCAL_MACHINE\SOFTWARE\WOW6432Node\Microsoft\Windows NT\CurrentVersion\AeDebug]
Auto="1"
■操作
プロセス(ここでは、AppForTest.exe)を起動するとデバッガーの選択ダイアログが表示されるようになります。
対象のデバッガーを選びます。
アタッチするプログラムを Visual Studio で開いて、ブレークポイントを設定しておきます。
実行されるとブレークポイントで停止します。