Método ICorDebugThread3::GetActiveInternalFrames

Retorna uma matriz de quadros internos (objetos ICorDebugInternalFrame2) na pilha.

Sintaxe

HRESULT GetActiveInternalFrames  
      (  
      [in] ULONG32 cInternalFrames,  
      [out] ULONG32 *pcInternalFrames,  
      [in, out,size_is(cInternalFrames), length_is(*pcInternalFrames)]  
            ICorDebugInternalFrame2 * ppInternalFrames[]  
      );  

Parâmetros

cInternalFrames
[in] O número de quadros internos esperados em ppInternalFrames.

pcInternalFrames
[out] Um ponteiro para um ULONG32 que contém o número de quadros internos na pilha.

ppInternalFrames
[in, out] Um ponteiro para o endereço de uma matriz de quadros internos na pilha.

Valor Retornado

Esse método retorna os seguintes HRESULTs específicos, bem como erros HRESULT que indicam falha de método.

HRESULT Descrição
S_OK O objeto ICorDebugInternalFrame2 foi criado com êxito.
E_INVALIDARG cInternalFrames não é zero e ppInternalFrames é null ou pcInternalFrames é null.
HRESULT_FROM_WIN32(ERROR_INSUFFICIENT_BUFFER) ppInternalFrames é menor que a contagem de quadros internos.

Exceções

Comentários

Os quadros internos são estruturas de dados enviadas por push para a pilha pelo runtime para o armazenamento de dados temporários.

Ao chamar GetActiveInternalFrames pela primeira vez, você deve definir o parâmetro cInternalFrames como 0 (zero) e o parâmetro ppInternalFrames como nulo. Quando GetActiveInternalFrames retorna pela primeira vez, pcInternalFrames contém a contagem dos quadros internos na pilha.

GetActiveInternalFrames deve, então, ser chamado uma segunda vez. Você deve passar a contagem adequada (pcInternalFrames) no parâmetro cInternalFrames e especificar um ponteiro para uma matriz de tamanho apropriado em ppInternalFrames.

Use o método ICorDebugStackWalk::GetFrame para retornar registros de ativação reais.

Requisitos

Plataformas: confira Requisitos do sistema.

Cabeçalho: CorDebug.idl, CorDebug.h

Biblioteca: CorGuids.lib

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

Confira também