2011-05-10 40 views
1

WinDbgを使用して実行可能ファイルをデバッグする場合、デバッグセッションの環境変数を設定する前に実行するバッチスクリプトを指定する方法はありますか?WinDbg環境変数

私はこの実行可能ファイルが実行される自動テスト環境を模倣しようとしています。変数には、現在のビルド番号、結果ディレクトリ、サードパーティツールディレクトリの場所などの情報が含まれています。私は自分のテストのためにこれらをアプリケーションにハードコードすることができますが、それは醜いです:)。

これはもちろんWindows OS上であり、私はむしろ別のデバッガを使用しないでください。

WinDbgがこれを直接サポートしていない場合、この機能を実現する最も良い方法は何ですか?

答えて

4

WinDbgの-oオプションを指定すると、自動的にすべての子プロセスに接続され、別のプログラムから起動されたプログラムのデバッグに役立ちます。 windbg -o cmd.exe /c myscript.batを実行すると、WinDbgはcmd.exe(スキップすることができます)とそのインスタンスによって生成されたすべての子プロセス(cmd.exe)をデバッグします。デバッグするファイルを実行する前にバッチファイルが他の多くのコマンドを実行していて、sx*コマンド(例:sxn ibp; sxe ld:mymodule)の場合は、迷惑行為を減らすことができなければなりません。

別のアプローチは、EXEが起動されるたびにImage File Execution Optionsレジストリキーを使用してWinDbg(またはcdb/ntsd)を添付することです。

+0

これは素晴らしいことです。それは十分に機能しますが、cmd.exeをスキップするのはちょっと面倒ですが、その価値はあります。どうもありがとう。 – MichaelHouse