DkmExceptionInformation Klasa

Definicja

Zawiera informacje o wyjątku, który został zgłoszony w procesie docelowym. Informacje te obejmują szczegóły dotyczące tego, który wyjątek został zgłoszony i bieżący etap przetwarzania wyjątku.

Klasy pochodne: DkmClrExceptionInformation, DkmCppExceptionInformation, DkmCustomExceptionInformation, DkmGPUMemoryAccessExceptionInformation, DkmWin32ExceptionInformation

public ref class DkmExceptionInformation abstract
[Windows::Foundation::Metadata::WebHostHidden]
public ref class DkmExceptionInformation abstract
[Windows::Foundation::Metadata::WebHostHidden]
class DkmExceptionInformation abstract
[System.Runtime.InteropServices.Guid("02e0d36d-e7ec-ebb8-105e-1b6ac73701ff")]
public abstract class DkmExceptionInformation
[<System.Runtime.InteropServices.Guid("02e0d36d-e7ec-ebb8-105e-1b6ac73701ff")>]
type DkmExceptionInformation = class
Public MustInherit Class DkmExceptionInformation
Dziedziczenie
DkmExceptionInformation
Pochodne
Atrybuty

Właściwości

Code

32-bitowy kod liczby całkowitej dla wyjątku. W przypadku wyjątków Win32 jest to kod przesłany do elementu Podnieśćexception (np. EXCEPTION_ACCESS_VIOLATION). Ta wartość jest równa zero dla kategorii wyjątków, które identyfikują wyjątki według ciągu (np. CLR).

ExceptionCategory

Wskazuje typ wyjątku.

ImplementationException

Obowiązkowe Informacje o podstawowym wyjątku używanym do implementowania wyjątku wyższego poziomu. Na przykład wyjątki CLR i C++ mogą być implementowane na podstawie wyjątków Win32. W ten sposób można przechowywać DkmWin32ExceptionInformation dla wyjątków CLR lub C++.

InstructionAddress

Obowiązkowe Adres, na którym wystąpił wyjątek. Będzie to zawsze obecne w przypadku wyjątków C++ i Win32. Może brakować wyjątków CLR lub MDA, ponieważ mogą one pochodzić z wnętrza środowiska uruchomieniowego.

Name

Obowiązkowe Nazwa wyjątku. W przypadku wyjątków języka C++ lub CLR jest to nazwa typu. Ta wartość będzie równa null dla kategorii wyjątków, które identyfikują wyjątki według kodu (np. Win32).

Process

DkmProcess reprezentuje proces docelowy, który jest debugowany. Debuger debuguje procesy, więc jest podstawową jednostką debugowania. DkmProcess może reprezentować proces systemowy lub proces wirtualny, taki jak minizrzutów.

ProcessingStage

Debuger odbiera powiadomienia od procesu docelowego na różnych etapach przetwarzania wyjątku (np. zgłoszono wyjątek, wyjątek nieobsłużony). To Wyliczenie wskazuje etapy powiadomienia.

RuntimeInstance

Klasa DkmRuntimeInstance reprezentuje środowisko wykonawcze, które jest ładowane do DkmProcess i zawiera kod, który ma być debugowany.

TagValue

DkmExceptionInformation jest abstrakcyjną klasą bazową. To Wyliczenie wskazuje klasę pochodną, której wystąpienie jest ten obiekt.

Thread

DkmThread reprezentuje wątek działający w procesie docelowym.

Metody

CanModifyProcessing()

Określa, czy przetwarzanie tego wyjątku może być modyfikowane przez debuger. Na przykład jeśli ten użytkownik wykonał akcję (taką jak instrukcja set Next), która wymagała niejawnego squashed, może to zwrócić wartość false. Ta metoda może również zwrócić wartość false, jeśli środowisko uruchomieniowe nie zezwoli na wyjątek squashed.

GetAdditionalInformation()

Zawiera dodatkowe informacje o wyjątku, który będzie wyświetlany, gdy program Visual Studio zatrzyma się na wyjątek. W przypadku wyjątków CLR zawiera właściwość "Message" z elementu System. Exception, który został zgłoszony.

Ograniczenie lokalizacji: interfejs API musi zostać wywołany ze składnika monitora (poziom składnika < 100 000).

GetDescription()

Zawiera opis ciągu dla wyjątku. Ta funkcja jest używana podczas śledzenia wyjątku do okna danych wyjściowych.

Ograniczenie lokalizacji: interfejs API musi zostać wywołany ze składnika monitora (poziom składnika < 100 000).

GetExceptionDetails(DkmInspectionSession)

Pobierz szczegóły wyjątku dla tego wyjątku.

         Ten interfejs API został wprowadzony w programie Visual Studio 15 RTM (DkmApiVersion. VS15RTM).
GetExceptionStackTrace()

Uzyskuje przechwycone ślady stosu powiązane z wyjątkiem, jeśli jest dostępny.

Ten interfejs API został wprowadzony w programie Visual Studio 12 RTM (DkmApiVersion. VS12RTM).

GetWinRTErrorInfo(String, String, String)

Zapewnia zorientowane na dewelopera dodatkowe informacje o wyjątku. Te informacje powinny być wyświetlane wraz z GetDescription i GetAdditionalInformation w celu wyjaśnienia przyczyny błędu.

Ograniczenie lokalizacji: interfejs API musi zostać wywołany ze składnika monitora (poziom składnika < 100 000).

OnContinued()

Zgłoś zdarzenie ExceptionContinued. Składniki implementujące interfejs ujścia zdarzeń otrzymają powiadomienie o zdarzeniu. Kontrolka zwróci wynik po powiadomieniu wszystkich składników.

Ograniczenie lokalizacji: interfejs API musi zostać wywołany ze składnika monitora (poziom składnika < 100 000).

OnDebugMonitorException()

Zgłoś zdarzenie DebugMonitorException. Składniki implementujące interfejs ujścia zdarzeń otrzymają powiadomienie o zdarzeniu. Kontrolka zwróci wynik po powiadomieniu wszystkich składników.

Ograniczenie lokalizacji: interfejs API musi zostać wywołany ze składnika monitora (poziom składnika < 100 000).

OnOutOfBandException()

Zgłoś zdarzenie OutOfBandException. Składniki implementujące interfejs ujścia zdarzeń otrzymają powiadomienie o zdarzeniu. Kontrolka zwróci wynik po powiadomieniu wszystkich składników.

Ograniczenie lokalizacji: interfejs API musi zostać wywołany ze składnika monitora (poziom składnika < 100 000).

Ten interfejs API został wprowadzony w programie Visual Studio 11 Update 1 (DkmApiVersion. VS11FeaturePack1).

SquashProcessing()

Aktualizuje stan procesu docelowego w taki sposób, aby po wznowieniu wykonywania proces docelowy nie kontynuował standardowego przetwarzania wyjątków (np. Wyszukiwanie obsługi, odwracanie stosu). Ta metoda musi zostać wywołana przed wznowieniem wykonywania.

Dotyczy