DkmProcess.AddExceptionTrigger 方法
定义
重要
一些信息与预发行产品相关,相应产品在发行之前可能会进行重大修改。 对于此处提供的信息,Microsoft 不作任何明示或暗示的担保。
重载
| 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>
请求完成时要触发的例程。 如果请求成功追加到工作列表中,则将始终激发 (包括) 取消操作时。 如果追加工作项失败,此操作永远不会激发。