Método ICorDebugManagedCallback2::FunctionRemapOpportunity

Notifica o depurador de que a execução de código atingiu um ponto de sequência em uma versão mais antiga de uma função editada.

Sintaxe

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

Parâmetros

pAppDomain [em] Um ponteiro para um objeto ICorDebugAppDomain que representa o domínio do aplicativo que contém a função editada.

pThread [em] Um ponteiro para um objeto ICorDebugThread que representa o thread no qual o ponto de interrupção de remapeamento foi encontrado.

pOldFunction [em] Um ponteiro para um objeto ICorDebugFunction que representa a versão da função que está sendo executada no thread.

pNewFunction [em] Um ponteiro para um objeto ICorDebugFunction que representa a versão mais recente da função.

oldILOffset [em] O deslocamento Common Intermediate Language (CIL) do ponteiro de instrução na versão antiga da função.

Comentários

Esse retorno de chamada dá ao depurador a oportunidade de remapear o ponteiro de instrução para seu local apropriado na nova versão da função especificada chamando o método ICorDebugILFrame2::RemapFunction. Se o depurador não chamar RemapFunction antes de chamar o método ICorDebugController::Continue, o runtime continuará a executar o código antigo e disparará outro retorno de chamada FunctionRemapOpportunity no próximo ponto de sequência.

Esse retorno de chamada será invocado para cada quadro que estiver executando uma versão mais antiga da função fornecida até que o depurador retorne S_OK.

Requisitos

Plataformas: confira Requisitos do sistema.

Cabeçalho: CorDebug.idl, CorDebug.h

Biblioteca: CorGuids.lib

Versões do .NET Framework: disponíveis desde 2.0

Confira também