ブレークポイントの設定
ブレークポイントは、AddBreakpoint メソッドを使用して作成されます。 このメソッドは、ブレークポイントを表す IDebugBreakpoint オブジェクトを作成します。 また、ブレークポイントのタイプ (ソフトウェア ブレークポイントまたはプロセッサ ブレークポイント) も設定します。 ブレークポイントが作成されると、そのタイプは変更できません。
ブレークポイントは、RemoveBreakpoint メソッドで削除されます。 これにより、IDebugBreakpoint オブジェクトも削除されます。 このオブジェクトは再度使用することはできません。
注IDebugBreakpoint は IUnknown インターフェイスを実装しますが、メソッド IUnknown::AddRef および IUnknown::Release はブレークポイントの有効期間の制御には使用されません。 これらのメソッドはブレークポイントの存続期間には影響しません。 代わりに、メソッド RemoveBreakpoint が呼び出された後、IDebugBreakpoint オブジェクトが削除されます。
ブレークポイントが作成されると、一意のブレークポイント ID が与えられます。 この識別子は変更されません。 ただし、ブレークポイントが削除された後は、その ID が別のブレークポイントに使用される可能性があります。 ブレークポイントの削除の通知を受け取る方法の詳細については、「イベントの監視」を参照してください。
ブレークポイントが作成されると、最初は無効になっています。 これは、ターゲットの実行が停止しないことを意味します。 このブレークポイントは、AddFlags メソッドを使用して DEBUG_BREAKPOINT_ENABLED フラグを追加することで有効にできます。
ブレークポイントが最初に作成されると、メモリ位置 0x00000000 が関連付けられます。 位置を変更するには、アドレスを指定して SetOffset を使用するか、シンボリック式を指定して SetOffsetExpression を使用します。 ブレークポイントの位置は、使用する前に初期値から変更する必要があります。