Método ICorDebugCode3::GetReturnValueLiveOffset

Para um deslocamento de IL especificado, obtém os deslocamentos nativos onde um ponto de interrupção deve ser colocado para que o depurador possa obter o valor de retorno de uma função.

Sintaxe

HRESULT GetReturnValueLiveOffset(  
    [in] ULONG32 ILoffset,  
    [in] ULONG32 bufferSize,
    [out] ULONG32 *pFetched,
    [out, size_is(buffersize), length_is(*pFetched)] ULong32 pOffsets[]  
);  

Parâmetros

ILoffset
O deslocamento IL. Deve ser um site de chamada de função ou a chamada de função falhará.

bufferSize
O número de bytes disponíveis para armazenar pOffsets.

pFetched
Um ponteiro para o número de deslocamentos realmente retornados. Normalmente, seu valor é 1, mas uma única instrução IL pode ser mapeada para várias CALL instruções de montagem.

pOffsets
Uma matriz de deslocamentos nativos. Normalmente, pOffsets contém um único deslocamento, embora uma única instrução IL possa mapear para vários mapas para váriasCALL instruções de montagem.

Comentários

Esse método é usado junto com o método ICorDebugILFrame3::GetReturnValueForILOffset para obter o valor de retorno de um método que retorna um tipo de referência. Passar um deslocamento de IL para um site de chamada de função para esse método retorna um ou mais deslocamentos nativos. O depurador pode definir pontos de interrupção nesses deslocamentos nativos na função. Quando o depurador atinge um dos pontos de interrupção, você pode passar o mesmo deslocamento de IL que você passou para esse método para o método ICorDebugILFrame3::GetReturnValueForILOffset para obter o valor de retorno. O depurador deve então limpar todos os pontos de interrupção que ele definiu.

Aviso

Os métodos ICorDebugCode3::GetReturnValueLiveOffset e ICorDebugILFrame3::GetReturnValueForILOffset permitem que você obtenha informações de valor de retorno apenas para tipos de referência. Não há suporte para recuperar informações de valor retornado de tipos de valor (ou seja, todos os tipos que derivam de ValueType) .

A função retorna os HRESULT valores mostrados na tabela a seguir.

HRESULT valor Descrição
S_OK Êxito.
CORDBG_E_INVALID_OPCODE O local de deslocamento de IL fornecido não é uma instrução de chamada ou a função retornavoid .
CORDBG_E_UNSUPPORTED O deslocamento de IL fornecido é uma chamada adequada, mas o tipo de retorno não é suportado para obter um valor de retorno.

O ICorDebugCode3::GetReturnValueLiveOffset método está disponível apenas em sistemas baseados em x86 e AMD64.

Requisitos

Plataformas: confira Requisitos do sistema.

Cabeçalho: CorDebug.idl, CorDebug.h

Biblioteca: CorGuids.lib

Versões do .NET Framework: Disponíveis desde a versão 4.5.1

Confira também