DkmNativeInstructionSymbol.GetSteppingRanges Method
Definition
Important
Some information relates to prerelease product that may be substantially modified before it’s released. Microsoft makes no warranties, express or implied, with respect to the information provided here.
Overloads
| Name | Description |
|---|---|
| GetSteppingRanges(DkmModuleInstance, DkmInstructionAddress, DkmSteppingRangeBoundary, Boolean) |
Queries the symbol provider to determine the ranges of instructions which the base debug monitor should step through to implement a step. Location constraint: API must be called from a Monitor component (component level < 100,000). This API was introduced in Visual Studio 14 RTM (DkmApiVersion.VS14RTM). |
| GetSteppingRanges(DkmWorkList, DkmModuleInstance, DkmInstructionAddress, DkmSteppingRangeBoundary, Boolean, DkmCompletionRoutine<DkmGetSteppingRangesAsyncResult>) |
Queries the symbol provider to determine the ranges of instructions which the base debug monitor should step through to implement a step. This method will append a new work item to the specified work list, and return once the work item has been appended. The actual processing of the work item is asynchronous. The caller will be notified that the request is complete through the completion routine. Location constraint: API must be called from a Monitor component (component level < 100,000). This API was introduced in Visual Studio 14 RTM (DkmApiVersion.VS14RTM). |
GetSteppingRanges(DkmModuleInstance, DkmInstructionAddress, DkmSteppingRangeBoundary, Boolean)
Queries the symbol provider to determine the ranges of instructions which the base debug monitor should step through to implement a step.
Location constraint: API must be called from a Monitor component (component level < 100,000).
This API was introduced in Visual Studio 14 RTM (DkmApiVersion.VS14RTM).
public:
cli::array <Microsoft::VisualStudio::Debugger::Symbols::DkmSteppingRange> ^ GetSteppingRanges(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.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.DkmModuleInstance ModuleInstance, Microsoft.VisualStudio.Debugger.DkmInstructionAddress? StepStartingAddress, Microsoft.VisualStudio.Debugger.Symbols.DkmSteppingRangeBoundary RangeBoundary, bool IncludeInline);
override this.GetSteppingRanges : Microsoft.VisualStudio.Debugger.DkmModuleInstance * Microsoft.VisualStudio.Debugger.DkmInstructionAddress * Microsoft.VisualStudio.Debugger.Symbols.DkmSteppingRangeBoundary * bool -> Microsoft.VisualStudio.Debugger.Symbols.DkmSteppingRange[]
Public Function GetSteppingRanges (ModuleInstance As DkmModuleInstance, StepStartingAddress As DkmInstructionAddress, RangeBoundary As DkmSteppingRangeBoundary, IncludeInline As Boolean) As DkmSteppingRange()
Parameters
- ModuleInstance
- DkmModuleInstance
[In] Module instance which contains the current instruction symbol.
- StepStartingAddress
- DkmInstructionAddress
[In,Optional] Instruction where the step began. May be null in unusual situations, such as beginning the step with no frames on the stack. Note that this is not necessarily a native instruction.
- RangeBoundary
- DkmSteppingRangeBoundary
[In] Indicates to the symbol provider the type of instructions to include in the 'no-step' regions.
- IncludeInline
- Boolean
[In] True if the symbol provider should stop the stepping range when it encounters an inline functions. False otherwise. The Native DM will pass true for a step in so steps will stop in inline functions. It will pass false when doing a step-over so the stepper will not stop in inline functions.
Returns
[Out] Array of ranges to step through. This array will be empty if there is no source information for the given instruction.
Applies to
GetSteppingRanges(DkmWorkList, DkmModuleInstance, DkmInstructionAddress, DkmSteppingRangeBoundary, Boolean, DkmCompletionRoutine<DkmGetSteppingRangesAsyncResult>)
Queries the symbol provider to determine the ranges of instructions which the base debug monitor should step through to implement a step.
This method will append a new work item to the specified work list, and return once the work item has been appended. The actual processing of the work item is asynchronous. The caller will be notified that the request is complete through the completion routine.
Location constraint: API must be called from a Monitor component (component level < 100,000).
This API was introduced in Visual Studio 14 RTM (DkmApiVersion.VS14RTM).
public void GetSteppingRanges(Microsoft.VisualStudio.Debugger.DkmWorkList WorkList, Microsoft.VisualStudio.Debugger.DkmModuleInstance ModuleInstance, Microsoft.VisualStudio.Debugger.DkmInstructionAddress? StepStartingAddress, Microsoft.VisualStudio.Debugger.Symbols.DkmSteppingRangeBoundary RangeBoundary, bool IncludeInline, Microsoft.VisualStudio.Debugger.DkmCompletionRoutine<Microsoft.VisualStudio.Debugger.Symbols.DkmGetSteppingRangesAsyncResult> CompletionRoutine);
override this.GetSteppingRanges : Microsoft.VisualStudio.Debugger.DkmWorkList * Microsoft.VisualStudio.Debugger.DkmModuleInstance * Microsoft.VisualStudio.Debugger.DkmInstructionAddress * Microsoft.VisualStudio.Debugger.Symbols.DkmSteppingRangeBoundary * bool * Microsoft.VisualStudio.Debugger.DkmCompletionRoutine<Microsoft.VisualStudio.Debugger.Symbols.DkmGetSteppingRangesAsyncResult> -> unit
Public Sub GetSteppingRanges (WorkList As DkmWorkList, ModuleInstance As DkmModuleInstance, StepStartingAddress As DkmInstructionAddress, RangeBoundary As DkmSteppingRangeBoundary, IncludeInline As Boolean, CompletionRoutine As DkmCompletionRoutine(Of DkmGetSteppingRangesAsyncResult))
Parameters
- WorkList
- DkmWorkList
WorkList to append the new work item to.
- ModuleInstance
- DkmModuleInstance
[In] Module instance which contains the current instruction symbol.
- StepStartingAddress
- DkmInstructionAddress
[In,Optional] Instruction where the step began. May be null in unusual situations, such as beginning the step with no frames on the stack. Note that this is not necessarily a native instruction.
- RangeBoundary
- DkmSteppingRangeBoundary
[In] Indicates to the symbol provider the type of instructions to include in the 'no-step' regions.
- IncludeInline
- Boolean
[In] True if the symbol provider should stop the stepping range when it encounters an inline functions. False otherwise. The Native DM will pass true for a step in so steps will stop in inline functions. It will pass false when doing a step-over so the stepper will not stop in inline functions.
- CompletionRoutine
- DkmCompletionRoutine<DkmGetSteppingRangesAsyncResult>
Routine to fire when the request is complete. If the request is successfully appended to the work list, this will always fire (including when the operation is canceled). This will never fire if appending the work item fails.