Freigeben über


ICorDebugThread::GetCurrentException-Methode

Ruft einen Schnittstellenzeiger auf ein ICorDebugValue-Objekt ab, das eine Ausnahme darstellt, die aktuell von verwaltetem Code ausgelöst wird.

HRESULT GetCurrentException (
    [out] ICorDebugValue **ppExceptionObject
);

Parameter

  • ppExceptionObject
    [out] Ein Zeiger auf die Adresse eines ICorDebugValue-Objekts, das die Ausnahme darstellt, die aktuell von verwaltetem Code ausgelöst wird.

Hinweise

Das Ausnahmeobjekt existiert vom Zeitpunkt, an dem die Ausnahme ausgelöst wird, bis zum Ende des catch-Blocks. Eine Funktionsauswertung, die von den ICorDebugEval-Methoden durchgeführt wird, entfernt das Ausnahmeobjekt beim Setup und stellt es nach dem Abschluss wieder her.

Ausnahmen können verschachtelt sein (wenn z. B. eine Ausnahme in einem Filter oder einer Funktionsauswertung ausgelöst wird), daher gibt es für einen einzelnen Thread möglicherweise mehrere offene Ausnahmen. GetCurrentException gibt die aktuellste Ausnahme zurück.

Ausnahmeobjekt und -typ können sich während der Lebensdauer der Ausnahme ändern. So kann z. B. eine Ausnahme von Typ X ausgelöst werden, aber im Anschluss verfügt die Common Language Runtime (CLR) unter Umständen nicht mehr über genügend Arbeitsspeicher und stuft diese Ausnahme zu einer Ausnahme wegen unzureichenden Arbeitsspeichers herauf.

Anforderungen

Plattformen: siehe Systemanforderungen für .NET Framework.

Header: CorDebug.idl, CorDebug.h

Bibliothek: CorGuids.lib

.NET Framework-Versionen: 4, 3.5 SP1, 3.5, 3.0 SP1, 3.0, 2.0 SP1, 2.0, 1.1, 1.0

Siehe auch

Referenz

ICorDebugThread-Schnittstelle

ICorDebugThread2-Schnittstelle