windbg なんか使わんでも Visual Studio 2005 でもできるだろ?
ってことで,やねさんの説明を参考にして実験してみた.
- -gオプション付きでコンパイルする。
- VSを起動して、「ソリューションを開く」で作成したexeを開く。普通に「開く」やドラッグアンドドロップで開くとリソースの編集画面になってしまいます。「ソリューションを開く」がポイント。
- IDEに自分で作ったソースコードをドラッグアンドドロップします。
- (試しに)そのソースコードの適当な部分にブレークポイントを設定してF5を押す。
まず,3番でソースをドラッグアンドドロップするだけだとプログラムとソースの関連を認識してくれなかった(一応,関数にブレークポイントを設定するときに,関数名を _Dmain にすれば main 関数の最初で止まってはいたが).
これは,
- ソリューションエクスプローラのソリューション名を右クリックしてプロパティを表示.
- 表示されたウィンドウの「共通プロパティ -> デバッグソースファイル」にデバッグしたいソースがあるフォルダを追加設定.
でうまくいった.
それと,例外が発生したときに追いかけられなくて困っていたけど,メニューから
- デバッグ -> 例外
と進んで,そこのチェックボックスを全部オンにしてみたらちゃんと例外発生時に停止してくれた.
さすが天下の Visual Studio だけあって,windbg のようにすぐ落ちたりしない.
どうしてもバグが見つからないときにデバッガを使えると助かるんじゃないかな.