DkmProcess.AddExceptionTrigger 方法

定义

重载

AddExceptionTrigger(Guid, DkmExceptionTrigger)

添加异常触发器,以便在满足异常触发器时发送 ExceptionTriggerHit 事件。

如果已为此 {SourceId,DkmExceptionTrigger} 元组触发了异常,则会使用新设置修改现有触发器。 例如,如果某一组件定义了一个触发器,该触发器在引发访问冲突异常时停止,稍后将触发器设置为在任何 Win32 异常未处理时激发,并将删除访问冲突触发器。

AddExceptionTrigger(DkmWorkList, Guid, DkmExceptionTrigger, DkmCompletionRoutine<DkmAddExceptionTriggerAsyncResult>)

添加异常触发器,以便在满足异常触发器时发送 ExceptionTriggerHit 事件。

如果已为此 {SourceId,DkmExceptionTrigger} 元组触发了异常,则会使用新设置修改现有触发器。 例如,如果某一组件定义了一个触发器,该触发器在引发访问冲突异常时停止,稍后将触发器设置为在任何 Win32 异常未处理时激发,并将删除访问冲突触发器。

此方法会将新工作项追加到指定的工作列表,并在追加工作项后返回。 工作项的实际处理是异步的。 向调用方发送请求完成后,将收到通过完成例程的通知。

AddExceptionTrigger(Guid, DkmExceptionTrigger)

添加异常触发器,以便在满足异常触发器时发送 ExceptionTriggerHit 事件。

如果已为此 {SourceId,DkmExceptionTrigger} 元组触发了异常,则会使用新设置修改现有触发器。 例如,如果某一组件定义了一个触发器,该触发器在引发访问冲突异常时停止,稍后将触发器设置为在任何 Win32 异常未处理时激发,并将删除访问冲突触发器。

public:
 void AddExceptionTrigger(Guid SourceId, Microsoft::VisualStudio::Debugger::Exceptions::DkmExceptionTrigger ^ Trigger);
public void AddExceptionTrigger (Guid SourceId, Microsoft.VisualStudio.Debugger.Exceptions.DkmExceptionTrigger Trigger);
member this.AddExceptionTrigger : Guid * Microsoft.VisualStudio.Debugger.Exceptions.DkmExceptionTrigger -> unit
Public Sub AddExceptionTrigger (SourceId As Guid, Trigger As DkmExceptionTrigger)

参数

SourceId
Guid

中标识对象的源。 当多个组件可能创建类的实例时,SourceIds 用于在方案中启用筛选。 例如,源 id 可用于确定断点是否来自 AD7 AL (ex: user 断点或其他) SDM 级别可见的断点,而不是可能由另一个组件创建的断点 (例如,用于单步执行) 的内部断点。

Trigger
DkmExceptionTrigger

中描述组件要在其上中断的异常或异常的集合。 当较高级别的组件希望收到有关特定异常的通知时,它应创建一个或多个异常触发器,然后 (EnableExceptionTriggers) 启用这些触发器。 此后,当发生异常时,只要满足此触发器,就会触发 ExceptionTriggerHit 异常。

适用于

AddExceptionTrigger(DkmWorkList, Guid, DkmExceptionTrigger, DkmCompletionRoutine<DkmAddExceptionTriggerAsyncResult>)

添加异常触发器,以便在满足异常触发器时发送 ExceptionTriggerHit 事件。

如果已为此 {SourceId,DkmExceptionTrigger} 元组触发了异常,则会使用新设置修改现有触发器。 例如,如果某一组件定义了一个触发器,该触发器在引发访问冲突异常时停止,稍后将触发器设置为在任何 Win32 异常未处理时激发,并将删除访问冲突触发器。

此方法会将新工作项追加到指定的工作列表,并在追加工作项后返回。 工作项的实际处理是异步的。 向调用方发送请求完成后,将收到通过完成例程的通知。

public:
 void AddExceptionTrigger(Microsoft::VisualStudio::Debugger::DkmWorkList ^ WorkList, Guid SourceId, Microsoft::VisualStudio::Debugger::Exceptions::DkmExceptionTrigger ^ Trigger, Microsoft::VisualStudio::Debugger::DkmCompletionRoutine<Microsoft::VisualStudio::Debugger::Exceptions::DkmAddExceptionTriggerAsyncResult> ^ CompletionRoutine);
public void AddExceptionTrigger (Microsoft.VisualStudio.Debugger.DkmWorkList WorkList, Guid SourceId, Microsoft.VisualStudio.Debugger.Exceptions.DkmExceptionTrigger Trigger, Microsoft.VisualStudio.Debugger.DkmCompletionRoutine<Microsoft.VisualStudio.Debugger.Exceptions.DkmAddExceptionTriggerAsyncResult> CompletionRoutine);
member this.AddExceptionTrigger : Microsoft.VisualStudio.Debugger.DkmWorkList * Guid * Microsoft.VisualStudio.Debugger.Exceptions.DkmExceptionTrigger * Microsoft.VisualStudio.Debugger.DkmCompletionRoutine<Microsoft.VisualStudio.Debugger.Exceptions.DkmAddExceptionTriggerAsyncResult> -> unit
Public Sub AddExceptionTrigger (WorkList As DkmWorkList, SourceId As Guid, Trigger As DkmExceptionTrigger, CompletionRoutine As DkmCompletionRoutine(Of DkmAddExceptionTriggerAsyncResult))

参数

WorkList
DkmWorkList

要将新工作项追加到的工作项。

SourceId
Guid

中标识对象的源。 当多个组件可能创建类的实例时,SourceIds 用于在方案中启用筛选。 例如,源 id 可用于确定断点是否来自 AD7 AL (ex: user 断点或其他) SDM 级别可见的断点,而不是可能由另一个组件创建的断点 (例如,用于单步执行) 的内部断点。

Trigger
DkmExceptionTrigger

中描述组件要在其上中断的异常或异常的集合。 当较高级别的组件希望收到有关特定异常的通知时,它应创建一个或多个异常触发器,然后 (EnableExceptionTriggers) 启用这些触发器。 此后,当发生异常时,只要满足此触发器,就会触发 ExceptionTriggerHit 异常。

CompletionRoutine
DkmCompletionRoutine<DkmAddExceptionTriggerAsyncResult>

请求完成时要触发的例程。 如果请求成功追加到工作列表中,则将始终激发 (包括) 取消操作时。 如果追加工作项失败,此操作永远不会激发。

适用于