Метод ICorDebugManagedCallback2::FunctionRemapOpportunity

Уведомляет отладчика, что выполнение кода достигло точки последовательности в более старой версии редактируемой функции.

Синтаксис

HRESULT FunctionRemapOpportunity (
    [in] ICorDebugAppDomain   *pAppDomain,
    [in] ICorDebugThread      *pThread,
    [in] ICorDebugFunction    *pOldFunction,
    [in] ICorDebugFunction    *pNewFunction,
    [in] ULONG32              oldILOffset
);

Параметры

pAppDomain [in] Указатель на объект ICorDebugAppDomain, представляющий домен приложения, содержащий редактированную функцию.

pThread [in] Указатель на объект ICorDebugThread, представляющий поток, на который была обнаружена точка останова повторного сопоставления.

pOldFunction [in] Указатель на объект ICorDebugFunction, представляющий версию функции, которая в настоящее время выполняется в потоке.

pNewFunction [in] Указатель на объект ICorDebugFunction, представляющий последнюю версию функции.

oldILOffset [in] Смещение общего промежуточного языка (CIL) указателя инструкции в старой версии функции.

Замечания

Этот обратный вызов дает отладчику возможность перенастраивать указатель инструкции на соответствующее место в новой версии указанной функции путем вызова метода ICorDebugILFrame2::RemapFunction . Если отладчик не вызывается RemapFunction перед вызовом метода ICorDebugController::Continue , среда выполнения продолжит выполнять старый код и вызовет другой FunctionRemapOpportunity обратный вызов в следующей точке последовательности.

Этот обратный вызов будет вызываться для каждого кадра, выполняющего старую версию данной функции, пока отладчик не вернет S_OK.

Требования

Платформы: см. раздел Требования к системе.

Заголовок: CorDebug.idl, CorDebug.h

Библиотека: CorGuids.lib

версии платформа .NET Framework: Доступно с версии 2.0

См. также