Condividi tramite


Metodo ICorDebugThread3::GetActiveInternalFrames

Restituisce una matrice di frame interni (oggetti ICorDebugInternalFrame2 ) nello stack.

Sintassi

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

Parametri

cInternalFrames [in] Numero di fotogrammi interni previsti in ppInternalFrames.

pcInternalFrames [out] Puntatore a un ULONG32 oggetto che contiene il numero di frame interni nello stack.

ppInternalFrames [in, out] Puntatore all'indirizzo di una matrice di frame interni nello stack.

Valore restituito

Questo metodo restituisce gli HRESULT specifici seguenti e gli errori HRESULT che indicano l'errore del metodo.

HRESULT Description
S_OK L'oggetto ICorDebugInternalFrame2 è stato creato correttamente.
E_INVALIDARG cInternalFrames non è zero e ppInternalFrames è nullo pcInternalFrames è null.
HRESULT_FROM_WIN32(ERROR_INSUFFICIENT_BUFFER) ppInternalFrames è inferiore al numero di fotogrammi interni.

Exceptions

Osservazioni:

I frame interni sono strutture di dati di cui viene eseguito il push nello stack dal runtime per archiviare i dati temporanei.

Quando si chiama GetActiveInternalFramesper la prima volta , è necessario impostare il cInternalFrames parametro su 0 (zero) e il ppInternalFrames parametro su null. Quando GetActiveInternalFrames viene restituito per la prima volta, pcInternalFrames contiene il conteggio dei fotogrammi interni nello stack.

GetActiveInternalFrames deve quindi essere chiamato una seconda volta. È necessario passare il conteggio corretto (pcInternalFrames) nel cInternalFrames parametro e specificare un puntatore a una matrice di dimensioni appropriate in ppInternalFrames.

Usare il metodo ICorDebugStackWalk::GetFrame per restituire gli stack frame effettivi.

Requisiti

Piattaforme: Vedere Sistemi operativi supportati da .NET.

Intestazione: CorDebug.idl, CorDebug.h

Biblioteca: CorGuids.lib

Versioni di .NET: Disponibile a partire da .NET Framework 4.0