次の方法で共有


プロジェクトへのアタッチとデタッチ

デバッガーをアタッチするには、適切な属性を使用してメソッドとイベントの正しいシーケンスを送信する必要があります。

メソッドとイベントのシーケンス

  1. セッション デバッグ マネージャー (SDM) で、OnAttach メソッドを呼び出します。

    デバッグ エンジン (DE) のプロセス モデルに基づいて、IDebugProgramNodeAttach2::OnAttach メソッドから次のいずれかのメソッドが返され、次に実行する処理が決まります。

    S_FALSE が返された場合、デバッグ エンジンはプログラムに正常にアタッチされています。 それ以外の場合は、アタッチ プロセスを完了させるために Attach メソッドが呼び出されます。

    S_OK が返された場合、DE は SDM と同じプロセスに読み込まれます。 SDM で次のタスクを実行します。

    1. GetEngineInfo を呼び出して、DE のエンジン情報を取得します。

    2. DE を共同作成します。

    3. Attach を呼び出します。

  2. DE が、EVENT_SYNC 属性を使用して SDM に IDebugEngineCreateEvent2 を送信します。

  3. DE が、EVENT_SYNC 属性を使用して SDM に IDebugProgramCreateEvent2 を送信します。

  4. DE が、EVENT_SYNC_STOP 属性を使用して SDM に IDebugLoadCompleteEvent2 を送信します。

    プログラムからのデタッチは、次のように簡単な 2 段階のプロセスです。

  5. SDM で、Detach を呼び出します。

  6. DE で、IDebugProgramDestroyEvent2 を送信します。