ICorDebugStepper 接口

表示在代码执行过程中由调试器执行的一个步骤。此步骤作为命令颁发和完成之间的标识符使用,可以实现取消对某个步骤的执行。

方法

方法

说明

ICorDebugStepper::Deactivate 方法

使此 ICorDebugStepper 取消其收到的最后一个单步执行命令。

ICorDebugStepper::IsActive 方法

获取一个值,该值指示此 ICorDebugStepper 当前是否正在执行某个步骤。

ICorDebugStepper::SetInterceptMask 方法

设置一个 CorDebugIntercept 值,该值指定单步执行的代码类型。

ICorDebugStepper::SetRangeIL 方法

设置一个值,该值指示对 ICorDebugStepper::StepRange 的调用是传递相对于正在单步执行的方法的本机代码的参数值还是 Microsoft 中间语言 (MSIL) 代码的参数值。

ICorDebugStepper::SetUnmappedStopMask 方法

设置一个 CorDebugUnmappedStop 值,该值指定将中断执行的未映射代码的类型。

ICorDebugStepper::Step 方法

使此 ICorDebugStepper 单步执行其包含线程,也可以继续单步执行该线程中调用的函数。

ICorDebugStepper::StepOut 方法

使此 ICorDebugStepper 单步执行其包含的线程,并在当前帧向调用帧返回控制时完成。

ICorDebugStepper::StepRange 方法

导致此 ICorDebugStepper 单步执行其包含线程,并在到达指定范围最后的代码之外时返回。

备注

ICorDebugStepper 接口可用于以下用途:

  • 作为发出的单步命令和该命令完成之间的标识符使用。

  • 提供一个中央接口,以封装可以执行的所有单步执行操作。

  • 提供永久取消单步执行操作的方法。

每个线程都可以有一个以上分档器。 例如,可能在单步执行函数时遇到断点,并且用户可能希望在该函数中开始新的单步执行操作。 调试器负责确定如何处理此情况。 调试器可能希望取消原始单步执行操作,或嵌套两个操作。 ICorDebugStepper 接口支持这两种选择。

如果公共语言运行时 (CLR) 进行线程间的封送调用,则分档器可能会在线程间迁移。

注意注意

不支持对此接口进行远程调用(无论是跨计算机还是跨进程)。

要求

**平台:**请参见 .NET Framework 系统要求

头文件: CorDebug.idl、CorDebug.h

**库:**CorGuids.lib

**.NET Framework 版本:**4、3.5 SP1、3.5、3.0 SP1、3.0、2.0 SP1、2.0、1.1、1.0

请参见

参考

ICorDebugStepper2 接口

其他资源

调试接口