Freigeben über


ICorDebugManagedCallback2::FunctionRemapOpportunity-Methode

Benachrichtigt den Debugger, dass die Codeausführung einen Sequenzpunkt in einer älteren Version einer bearbeiteten Funktion erreicht hat.

Syntax

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

Parameter

pAppDomain[in] Ein Zeiger auf ein ICorDebugAppDo Standard Objekt, das die Anwendung darstellt Standard die die bearbeitete Funktion enthält.

pThread [in] Ein Zeiger auf ein ICorDebugThread -Objekt, das den Thread darstellt, auf dem der Remap-Haltepunkt gefunden wurde.

pOldFunction [in] Ein Zeiger auf ein ICorDebugFunction -Objekt, das die Version der Funktion darstellt, die derzeit im Thread ausgeführt wird.

pNewFunction [in] Ein Zeiger auf ein ICorDebugFunction -Objekt, das die neueste Version der Funktion darstellt.

oldILOffset [in] Der CIL-Offset (Common Intermediate Language) des Anweisungszeigers in der alten Version der Funktion.

Hinweise

Dieser Rückruf gibt dem Debugger die Möglichkeit, den Anweisungszeiger durch Aufruf der Methode ICorDebugILFrame2::RemapFunction wieder der richtigen Position in der neuen Version der angegebenen Funktion zuzuordnen. Wenn der Debugger RemapFunction nicht vor dem Aufruf der ICorDebugController::Continue-Methode aufruft, führt die Runtime weiterhin den alten Code aus und löst beim nächsten Sequenzpunkt erneut einen FunctionRemapOpportunity-Rückruf aus.

Dieser Rückruf wird für jeden Frame aufgerufen, der eine ältere Version der angegebenen Funktion ausführt, bis der Debugger S_OK zurückgibt.

Anforderungen

Plattformen: Informationen finden Sie unter Systemanforderungen.

Header: CorDebug.idl, CorDebug.h

Bibliothek: CorGuids.lib

.NET Framework-Versionen: Seit 2.0 verfügbar.

Siehe auch