デバッグ中にライブ オブジェクト グラフを表示する Visual Studio パッケージを作成しようとしています。
VS 2010 パッケージ内からマネージ デバッガーのデータにアクセスする方法はありますか? EnvDTE.Debugger API のことは知っていますが、私のユース ケースでは十分なデータが得られません。
WinDbg/SOS を使用して可能であることは知っていますが、適切に統合して使用できるようにしたいので、これはオプションではありません。
どんな情報でも本当にありがたいです!
編集:
私の要件は基本的に次のとおりです。
- デバッガーがブレーク モードのときに、現在のスタック フレームのすべてのオブジェクトを取得します。
- 特定のオブジェクト (つまり、そのフィールド) によって参照されるすべてのオブジェクトを取得します。
- オブジェクトを一意に識別して、複数のオブジェクトが同じオブジェクトを参照している場合に、参照されているオブジェクトが 1 つだけであることを検出する方法があるようにします。
- VSデバッガーが接続されている間にこれをすべて実行すると、別のデバッガーを使用して効果的に殺されます...
これまでにわかったこと:
- EnvDTE.Debugger が要件 2 および 3 を満たしていない
- シリアライズ可能なオブジェクトでのみ機能するため、デバッガー ビジュアライザーは機能しません。
- WinDbg は、プロセスに排他的に接続する必要があるため、機能しません。