Compartir a través de


COR_PRF_EX_CLAUSE_INFO (Estructura)

Almacena información sobre una instancia específica de cláusula de excepción y su marco asociado.

Sintaxis

typedef struct COR_PRF_EX_CLAUSE_INFO {  
    COR_PRF_CLAUSE_TYPE clauseType;  
    UINT_PTR programCounter;  
    UINT_PTR framePointer;  
    UINT_PTR shadowStackPointer;  
} COR_PRF_EX_CLAUSE_INFO;  

Miembros

Miembro Descripción
clauseType Este valor se corresponde con uno de los valores de la enumeración COR_PRF_CLAUSE_TYPE, que se usan para especificar el tipo de cláusula de excepción en la que acaba de entrar o de la que acaba de salir el código.
programCounter Este valor se usa para almacenar el punto de entrada nativo del controlador de cláusulas (por ejemplo: el contenido del registro EIP X86).
framePointer Este valor se usa para almacenar el puntero que apunta al marco lógico del controlador de cláusulas (por ejemplo: el contenido del registro EBP X86).
shadowStackPointer Este valor se usa para almacenar el puntero que apunta a la pila paralela. Este valor se corresponde con el contenido del registro BSP y solo se aplica a la arquitectura IA64.

Comentarios

Cuando se recibe una notificación de excepción, se puede usar el método ICorProfilerInfo2::GetNotifiedExceptionClauseInfo para obtener la información de la dirección nativa y del marco de la cláusula de excepción (catch/finally/filter) que está a punto de ejecutarse o que se acaba de ejecutar.

La ejecución de una cláusula de excepción implica las siguientes devoluciones de llamada, que se reciben desde la infraestructura Common Language Runtime (CLR):

Requisitos

Plataformas: Vea Requisitos de sistema.

Encabezado: CorProf.idl

Biblioteca: CorGuids.lib

Versiones de .NET Framework: disponible a partir de la versión 2.0

Consulte también