Sdílet prostřednictvím


IDebugStackFrame3

Toto rozhraní rozšiřuje IDebugStackFrame2 pro zpracování zachycených výjimek.

Syntaxe

IDebugStackFrame3 : IDebugStackFrame2

Poznámky pro implementátory

Ladicí modul (DE) implementuje toto rozhraní na stejném objektu, který implementuje IDebugStackFrame2 rozhraní pro podporu zachycených výjimek.

Poznámky pro volající

Volání QueryInterface v IDebugStackFrame2 rozhraní získat toto rozhraní.

Metody v pořadí Vtable

Kromě metod zděděných z IDebugStackFrame2 IDebugStackFrame3zveřejňuje následující metody.

metoda Popis
InterceptCurrentException Zpracuje výjimku pro aktuální rámec zásobníku před jakýmkoli běžným zpracováním výjimek.
GetUnwindCodeContext Vrátí kontext kódu, pokud došlo k uvolnění zásobníku.

Poznámky

Zachycená výjimka znamená, že ladicí program může zpracovat výjimku před voláním normálních rutin zpracování výjimek v době běhu. Zachycení výjimky v podstatě znamená, že doba běhu předstírání, že existuje obslužná rutina výjimky, i když neexistuje.

  • InterceptCurrentException se volá během všech normálních událostí zpětného volání výjimky (jedinou výjimkou je, že ladíte kód smíšeného režimu (spravovaný a nespravovaný kód), v takovém případě se výjimka nedá zachytit během posledního náhodného zpětného volání). Pokud de neimplementuje IDebugStackFrame3nebo de vrátí chybu z IDebugStackFrame3::InterceptCurrentException (například E_NOTIMPL), ladicí program zpracuje výjimku normálně.

Když ladicí program zachytí výjimku, může uživateli umožnit provádět změny stavu ladění programu a pak pokračovat v provádění v okamžiku, kdy byla výjimka vyvolána.

Poznámka:

Zachycené výjimky jsou povoleny pouze ve spravovaném kódu, to znamená v programu, který běží v modulu CLR (Common Language Runtime).

Ladicí modul označuje, že podporuje zachycení výjimek nastavením parametru metricExceptions na hodnotu 1 za běhu pomocí SetMetric funkce. Další informace naleznete v tématu Pomocné rutiny sady SDK pro ladění.

Požadavky

Hlavička: msdbg.h

Obor názvů: Microsoft.VisualStudio.Debugger.Interop

Sestavení: Microsoft.VisualStudio.Debugger.Interop.dll

Viz také