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
[em] O número de quadros internos esperados no ppInternalFrames
.
pcInternalFrames
[fora] Um ponteiro para um ULONG32
que contém o número de quadros internos na pilha.
ppInternalFrames
[dentro, fora] Um ponteiro para o endereço de uma matriz de quadros internos na pilha.
Valor de retorno
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