IDkmNativeSymbolProviderCallback120a.GetSteppingRanges 方法

定义

查询符号提供程序,以确定基本调试监视器应逐步执行的指令范围以实现步骤。

public:
 cli::array <Microsoft::VisualStudio::Debugger::Symbols::DkmSteppingRange> ^ GetSteppingRanges(Microsoft::VisualStudio::Debugger::Native::DkmNativeInstructionSymbol ^ nativeInstruction, Microsoft::VisualStudio::Debugger::DkmModuleInstance ^ moduleInstance, Microsoft::VisualStudio::Debugger::DkmInstructionAddress ^ stepStartingAddress, Microsoft::VisualStudio::Debugger::Symbols::DkmSteppingRangeBoundary rangeBoundary, bool includeInline);
public Microsoft.VisualStudio.Debugger.Symbols.DkmSteppingRange[] GetSteppingRanges (Microsoft.VisualStudio.Debugger.Native.DkmNativeInstructionSymbol nativeInstruction, Microsoft.VisualStudio.Debugger.DkmModuleInstance moduleInstance, Microsoft.VisualStudio.Debugger.DkmInstructionAddress stepStartingAddress, Microsoft.VisualStudio.Debugger.Symbols.DkmSteppingRangeBoundary rangeBoundary, bool includeInline);
abstract member GetSteppingRanges : Microsoft.VisualStudio.Debugger.Native.DkmNativeInstructionSymbol * Microsoft.VisualStudio.Debugger.DkmModuleInstance * Microsoft.VisualStudio.Debugger.DkmInstructionAddress * Microsoft.VisualStudio.Debugger.Symbols.DkmSteppingRangeBoundary * bool -> Microsoft.VisualStudio.Debugger.Symbols.DkmSteppingRange[]
Public Function GetSteppingRanges (nativeInstruction As DkmNativeInstructionSymbol, moduleInstance As DkmModuleInstance, stepStartingAddress As DkmInstructionAddress, rangeBoundary As DkmSteppingRangeBoundary, includeInline As Boolean) As DkmSteppingRange()

参数

nativeInstruction
DkmNativeInstructionSymbol

中DkmNativeInstructionSymbol 表示目标进程的模块内的本机指令。 DkmNativeInstructionSymbol 为1:1,包含基础本机指令。 因此,如果有两个方法的模板实例 (ex: MyMethod < CString > 和 MyMethod < int >) 如果链接器通过 COMDAT 折叠将两个实例合并为一个函数,则这些方法将是相同的。 如果链接器无法合并两个实例化,则这两个用户级别函数将显示为一个 DkmNativeInstructionSymbol。

moduleInstance
DkmModuleInstance

中包含当前指令符号的模块实例。

stepStartingAddress
DkmInstructionAddress

[In,可选]步骤开始的说明。 在异常情况下可能为 null,例如,在堆栈上开始没有帧的步骤。 请注意,这不一定是本机指令。

rangeBoundary
DkmSteppingRangeBoundary

中向符号提供程序指示要包含在 "无步骤" 区域中的指令的类型。

includeInline
Boolean

中如果符号提供程序在遇到内联函数时应停止单步执行范围,则为 True。 否则为 False。 本机 DM 将为中的步骤传递 true,因此步骤会在内联函数中停止。 这会在执行逐步骤时传递 false,因此分档器不会在内联函数中停止。

返回

DkmSteppingRange[]

弄要单步执行的范围的数组。 如果给定指令没有源信息,此数组将为空。

适用于