ICorDebugManagedCallback2::FunctionRemapOpportunity メソッド
コードの実行が編集された関数の古いバージョンのシーケンス ポイントに達したことを、デバッガーに通知します。
構文
HRESULT FunctionRemapOpportunity (
[in] ICorDebugAppDomain *pAppDomain,
[in] ICorDebugThread *pThread,
[in] ICorDebugFunction *pOldFunction,
[in] ICorDebugFunction *pNewFunction,
[in] ULONG32 oldILOffset
);
パラメーター
pAppDomain
[in]編集された関数を含むアプリケーション doメイン を表す ICorDebugAppDoメイン オブジェクトへのポインター。
pThread
[in]再マップ ブレークポイントが検出されたスレッドを表す ICorDebugThread オブジェクトへのポインター。
pOldFunction
[in]スレッドで現在実行されている関数のバージョンを表す ICorDebugFunction オブジェクトへのポインター。
pNewFunction
[in]関数の最新バージョンを表す ICorDebugFunction オブジェクトへのポインター。
oldILOffset
[in]以前のバージョンの関数の命令ポインターの共通中間言語 (CIL) オフセット。
解説
このコールバックからは、ICorDebugILFrame2::RemapFunction メソッドを呼び出すことで、指定の関数の新しいバージョンで、命令ポインターをその適切な場所に再マッピングする機会がデバッガーに与えられます。 ICorDebugController::Continue メソッドを呼び出す前にデバッガーで RemapFunction
が呼び出されない場合、ランタイムは引き続き古いコードを実行し、次のシーケンス ポイントで別の FunctionRemapOpportunity
コールバックを始動させます。
このコールバックは、デバッガーから S_OK が返されるまで、指定の関数の古いバージョンがフレームによって実行されるたびに呼び出されます。
必要条件
:「システム要件」を参照してください。
ヘッダー: CorDebug.idl、CorDebug.h
ライブラリ: CorGuids.lib
.NET Framework のバージョン: 2.0 以降で使用可能
関連項目
.NET