Compartilhar via


DkmWin32ExceptionInformation Class

Definition

Provides information about a Win32 exception which was raised in the target process.

public ref class DkmWin32ExceptionInformation : Microsoft::VisualStudio::Debugger::Exceptions::DkmExceptionInformation
[Windows::Foundation::Metadata::WebHostHidden]
public ref class DkmWin32ExceptionInformation : Microsoft::VisualStudio::Debugger::Exceptions::DkmExceptionInformation
[Windows::Foundation::Metadata::WebHostHidden]
class DkmWin32ExceptionInformation : Microsoft::VisualStudio::Debugger::Exceptions::DkmExceptionInformation
[System.Runtime.InteropServices.Guid("8ca1a5b5-5cbb-f33f-6476-ae67ac9417fa")]
public class DkmWin32ExceptionInformation : Microsoft.VisualStudio.Debugger.Exceptions.DkmExceptionInformation
[<System.Runtime.InteropServices.Guid("8ca1a5b5-5cbb-f33f-6476-ae67ac9417fa")>]
type DkmWin32ExceptionInformation = class
    inherit DkmExceptionInformation
Public Class DkmWin32ExceptionInformation
Inherits DkmExceptionInformation
Inheritance
DkmWin32ExceptionInformation
Attributes

Properties

Address

The address where the exception occurred.

Code

32-bit integer code for the exception. For Win32 exceptions, this is the code passed to RaiseException (ex:EXCEPTION_ACCESS_VIOLATION). This value is zero for exception categories that identify exceptions by string (ex: CLR).

(Inherited from DkmExceptionInformation)
ExceptionCategory

Indicates the type of exception.

(Inherited from DkmExceptionInformation)
ExceptionFlags

The exception flags. This can be either zero to indicate a continuable exception, or EXCEPTION_NONCONTINUABLE to indicate a noncontinuable exception.

ExceptionParameters

Parameters passed when the exception was raised. These parameters may be passed from the Kernel as part of handling a hardware fault (ex: access violation), or they may be passed from kernel32!RaiseException for software exceptions.

ImplementationException

[Optional] Information about the underlying exception used to implement a higher level exception. For example, CLR and C++ exceptions may be implemented on top of Win32 exceptions. So this may store the DkmWin32ExceptionInformation for CLR or C++ exceptions.

(Inherited from DkmExceptionInformation)
InstructionAddress

[Optional] Address where the exception occurred. This will always be present for C++ and Win32 exceptions. It may be missing from CLR exceptions or MDAs as these may originate from inside the runtime.

(Inherited from DkmExceptionInformation)
Name

[Optional] Name of the exception. For C++ or CLR exceptions, this is the type name. This value will be null for exception categories that identify exceptions by code (ex: Win32).

(Inherited from DkmExceptionInformation)
ParentExceptionRecordAddress

Address within the target process where the parent EXCEPTION_RECORD pointer can be found. This is commonly zero.

Process

DkmProcess represents a target process which is being debugged. The debugger debugs processes, so this is the basic unit of debugging. A DkmProcess can represent a system process or a virtual process such as minidumps.

(Inherited from DkmExceptionInformation)
ProcessingStage

The debugger receives notifications from the target process at various stages within exception processing (ex: exception thrown, exception unhandled). This enumeration indicates the stage(s) for a notification.

(Inherited from DkmExceptionInformation)
RuntimeInstance

The DkmRuntimeInstance class represents an execution environment which is loaded into a DkmProcess and which contains code to be debugged.

(Inherited from DkmExceptionInformation)
TagValue

DkmExceptionInformation is an abstract base class. This enum indicates which derived class this object is an instance of.

(Inherited from DkmExceptionInformation)
Thread

DkmThread represents a thread running in the target process.

(Inherited from DkmExceptionInformation)

Methods

CanModifyProcessing()

Determines if processing for this exception may be modified by the debugger. For example, if this user has performed an action (such as set next statement) that required the exception to be implicitly squashed, this may return false. This method may also return false if the runtime does not permit the exception from being squashed.

(Inherited from DkmExceptionInformation)
Create(DkmRuntimeInstance, DkmThread, DkmInstructionAddress, UInt32, DkmExceptionProcessingStage, UInt32, UInt64, UInt64, ReadOnlyCollection<UInt64>)

Create a new DkmWin32ExceptionInformation object instance.

GetAdditionalInformation()

Provides additional information about an exception which will appear when Visual Studio stops on the exception. For CLR exceptions, this contains the 'Message' property from the System.Exception which was thrown.

Location constraint: API must be called from a Monitor component (component level < 100,000).

(Inherited from DkmExceptionInformation)
GetDescription()

Provides a string description for an exception. This is used when tracing the exception to the output window.

Location constraint: API must be called from a Monitor component (component level < 100,000).

(Inherited from DkmExceptionInformation)
GetExceptionDetails(DkmInspectionSession)

Get the exception details for this exception.

This API was introduced in Visual Studio 15 RTM (DkmApiVersion.VS15RTM).

(Inherited from DkmExceptionInformation)
GetExceptionStackTrace()

Obtains the captured stack trace associated with the exception, if one is available.

This API was introduced in Visual Studio 12 RTM (DkmApiVersion.VS12RTM).

(Inherited from DkmExceptionInformation)
GetWinRTErrorInfo(String, String, String)

Provides developer-oriented additional information about the exception. This info should be displayed along with GetDescription and GetAdditionalInformation to clarify the cause of the error.

Location constraint: API must be called from a Monitor component (component level < 100,000).

(Inherited from DkmExceptionInformation)
OnContinued()

Raise a ExceptionContinued event. Components which implement the event sink interface will receive the event notification. Control will return once all components have been notified.

Location constraint: API must be called from a Monitor component (component level < 100,000).

(Inherited from DkmExceptionInformation)
OnDebugMonitorException()

Raise a DebugMonitorException event. Components which implement the event sink interface will receive the event notification. Control will return once all components have been notified.

Location constraint: API must be called from a Monitor component (component level < 100,000).

(Inherited from DkmExceptionInformation)
OnOutOfBandException()

Raise a OutOfBandException event. Components which implement the event sink interface will receive the event notification. Control will return once all components have been notified.

Location constraint: API must be called from a Monitor component (component level < 100,000).

This API was introduced in Visual Studio 11 Update 1 (DkmApiVersion.VS11FeaturePack1).

(Inherited from DkmExceptionInformation)
SquashProcessing()

Updates the state of the target process so that when execution is resumed, the target process will not continue standard exception processing (ex: handler search, stack unwinding). This method needs to be called before resuming execution.

(Inherited from DkmExceptionInformation)

Applies to