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 specifici HRESULT seguenti, nonché gli errori di HRESULT che indicano la mancata riuscita del metodo.

HRESULT Descrizione
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.

Eccezioni

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 Requisiti di sistema.

Intestazione: CorDebug.idl, CorDebug.h

Libreria: CorGuids.lib

Versioni di .NET Framework: disponibili dalla versione 4

Vedi anche