ICorDebugThread::GetCurrentException Method
Gets an interface pointer to an ICorDebugValue Interface that represents an exception object currently being thrown by managed code.
HRESULT GetCurrentException (
[out] ICorDebugValue **ppExceptionObject
);
Parameters
Parameter | Description |
---|---|
ppExceptionObject |
[out] A pointer to the address of an ICorDebugValue Interface object that represents the exception currently being thrown by managed code. |
Remarks
The exception object will exist from the time the exception is thrown until the end of the catch block. A func-eval (function evaluation), which is performed by the ICorDebugEval Interface methods, will clear out the exception object on setup and restore it on completion. Exceptions can be nested (e.g., if an exception is thrown in a filter or a func-eval), so there may be multiple outstanding exceptions on a single thread.
GetCurrentException returns the most current exception. The exception object and type may change throughout the life of the exception. For example, an exception of type X may be thrown, but then the common language runtime (CLR) may run out of memory and promote that to an out-of-memory exception.
Requirements
Platforms: Windows 2000, Windows XP, Windows Server 2003 family
Header: CorDebug.idl
Library: CorGuids.lib
.NET Framework Version: 2.0, 1.1, 1.0