DkmStepper.Create 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
Create(DkmThread, DkmInstructionAddress, UInt64, DkmStepKind, DkmStepUnit, Guid, DkmSteppingCodePath, DkmStepper, DkmDataItem) |
DkmStepper objects are created by components that wish to issue a step. User-level steppers are created by the AD7-AL. To initialize a stepper object, Enable must be called. Stepper objects will live until the step completes, or is aborted. |
Create(DkmThread, DkmInstructionAddress, UInt64, DkmStepKind, DkmStepUnit, Guid, DkmSteppingCodePath, DkmStepper, Boolean, ReadOnlyCollection<DkmSteppingCodePath>, String, DkmDataItem) |
DkmStepper objects are created by components that wish to issue a step. User-level steppers are created by the AD7-AL. To initialize a stepper object, Enable must be called. Stepper objects will live until the step completes, or is aborted. This API was introduced in Visual Studio 12 RTM (DkmApiVersion.VS12RTM). |
Create(DkmThread, DkmInstructionAddress, UInt64, DkmStepKind, DkmStepUnit, Guid, DkmSteppingCodePath, DkmStepper, DkmDataItem)
DkmStepper objects are created by components that wish to issue a step. User-level steppers are created by the AD7-AL. To initialize a stepper object, Enable must be called. Stepper objects will live until the step completes, or is aborted.
public:
static Microsoft::VisualStudio::Debugger::Stepping::DkmStepper ^ Create(Microsoft::VisualStudio::Debugger::DkmThread ^ Thread, Microsoft::VisualStudio::Debugger::DkmInstructionAddress ^ StartingAddress, System::UInt64 FrameBase, Microsoft::VisualStudio::Debugger::Stepping::DkmStepKind StepKind, Microsoft::VisualStudio::Debugger::Stepping::DkmStepUnit StepUnit, Guid SourceId, Microsoft::VisualStudio::Debugger::Stepping::DkmSteppingCodePath ^ CodePath, Microsoft::VisualStudio::Debugger::Stepping::DkmStepper ^ CrossThreadParent, Microsoft::VisualStudio::Debugger::DkmDataItem ^ DataItem);
public static Microsoft.VisualStudio.Debugger.Stepping.DkmStepper Create (Microsoft.VisualStudio.Debugger.DkmThread Thread, Microsoft.VisualStudio.Debugger.DkmInstructionAddress StartingAddress, ulong FrameBase, Microsoft.VisualStudio.Debugger.Stepping.DkmStepKind StepKind, Microsoft.VisualStudio.Debugger.Stepping.DkmStepUnit StepUnit, Guid SourceId, Microsoft.VisualStudio.Debugger.Stepping.DkmSteppingCodePath CodePath, Microsoft.VisualStudio.Debugger.Stepping.DkmStepper CrossThreadParent, Microsoft.VisualStudio.Debugger.DkmDataItem DataItem);
public static Microsoft.VisualStudio.Debugger.Stepping.DkmStepper Create (Microsoft.VisualStudio.Debugger.DkmThread Thread, Microsoft.VisualStudio.Debugger.DkmInstructionAddress? StartingAddress, ulong FrameBase, Microsoft.VisualStudio.Debugger.Stepping.DkmStepKind StepKind, Microsoft.VisualStudio.Debugger.Stepping.DkmStepUnit StepUnit, Guid SourceId, Microsoft.VisualStudio.Debugger.Stepping.DkmSteppingCodePath? CodePath, Microsoft.VisualStudio.Debugger.Stepping.DkmStepper? CrossThreadParent, Microsoft.VisualStudio.Debugger.DkmDataItem? DataItem);
static member Create : Microsoft.VisualStudio.Debugger.DkmThread * Microsoft.VisualStudio.Debugger.DkmInstructionAddress * uint64 * Microsoft.VisualStudio.Debugger.Stepping.DkmStepKind * Microsoft.VisualStudio.Debugger.Stepping.DkmStepUnit * Guid * Microsoft.VisualStudio.Debugger.Stepping.DkmSteppingCodePath * Microsoft.VisualStudio.Debugger.Stepping.DkmStepper * Microsoft.VisualStudio.Debugger.DkmDataItem -> Microsoft.VisualStudio.Debugger.Stepping.DkmStepper
Public Shared Function Create (Thread As DkmThread, StartingAddress As DkmInstructionAddress, FrameBase As ULong, StepKind As DkmStepKind, StepUnit As DkmStepUnit, SourceId As Guid, CodePath As DkmSteppingCodePath, CrossThreadParent As DkmStepper, DataItem As DkmDataItem) As DkmStepper
Parameters
- Thread
- DkmThread
[In] DkmThread represents a thread running in the target process.
- StartingAddress
- DkmInstructionAddress
[In,Optional] The instruction address of the process at the time this step started. This will be NULL if the step originated on a thread with no frames (Script & Managed Only).
- FrameBase
- UInt64
[In] The frame base of the first frame at the beginning of the step. This value will be MAXUINT64 if the StartingAddress was not specified.
- StepKind
- DkmStepKind
[In] DkmStepKind describes how to step the thread when the Step Method is called.
- StepUnit
- DkmStepUnit
[In] DkmStepUnit describes the granularity of the step when the Step method is called.
- SourceId
- Guid
[In] Identifies the source of an object. SourceIds are used to enable filtering in scenarios when multiple components may be creating instances of a class. For example, source ids can be used to determine if a breakpoint comes from the AD7 AL (ex: user breakpoint, or other breakpoint visible at the SDM level) instead of a breakpoint which may be created by another component (for example an internal breakpoint used for stepping).
- CodePath
- DkmSteppingCodePath
[In,Optional] If StepKind is StepIntoSpecific, specifies which call we are stepping into. Otherwise it is NULL.
- CrossThreadParent
- DkmStepper
[In,Optional] If a new stepper is created using OnCrossThreadStepArbitration, the stepping manager will set this field to make it easy to get back to the original stepper if the cross thread step fails or needs to fallback. Deprecated. Use GetCrossThreadParent instead.
- DataItem
- DkmDataItem
[In,Optional] Data object to add to the new DkmStepper instance. Pass 'null' in the case that the caller doesn't need to add a data item.
Returns
[Out] Result of this method call.
Applies to
Create(DkmThread, DkmInstructionAddress, UInt64, DkmStepKind, DkmStepUnit, Guid, DkmSteppingCodePath, DkmStepper, Boolean, ReadOnlyCollection<DkmSteppingCodePath>, String, DkmDataItem)
DkmStepper objects are created by components that wish to issue a step. User-level steppers are created by the AD7-AL. To initialize a stepper object, Enable must be called. Stepper objects will live until the step completes, or is aborted.
This API was introduced in Visual Studio 12 RTM (DkmApiVersion.VS12RTM).
public:
static Microsoft::VisualStudio::Debugger::Stepping::DkmStepper ^ Create(Microsoft::VisualStudio::Debugger::DkmThread ^ Thread, Microsoft::VisualStudio::Debugger::DkmInstructionAddress ^ StartingAddress, System::UInt64 FrameBase, Microsoft::VisualStudio::Debugger::Stepping::DkmStepKind StepKind, Microsoft::VisualStudio::Debugger::Stepping::DkmStepUnit StepUnit, Guid SourceId, Microsoft::VisualStudio::Debugger::Stepping::DkmSteppingCodePath ^ CodePath, Microsoft::VisualStudio::Debugger::Stepping::DkmStepper ^ CrossThreadParent, bool ShouldCaptureReturnValue, System::Collections::ObjectModel::ReadOnlyCollection<Microsoft::VisualStudio::Debugger::Stepping::DkmSteppingCodePath ^> ^ CurrentCodePaths, System::String ^ CurrentMethodName, Microsoft::VisualStudio::Debugger::DkmDataItem ^ DataItem);
public static Microsoft.VisualStudio.Debugger.Stepping.DkmStepper Create (Microsoft.VisualStudio.Debugger.DkmThread Thread, Microsoft.VisualStudio.Debugger.DkmInstructionAddress StartingAddress, ulong FrameBase, Microsoft.VisualStudio.Debugger.Stepping.DkmStepKind StepKind, Microsoft.VisualStudio.Debugger.Stepping.DkmStepUnit StepUnit, Guid SourceId, Microsoft.VisualStudio.Debugger.Stepping.DkmSteppingCodePath CodePath, Microsoft.VisualStudio.Debugger.Stepping.DkmStepper CrossThreadParent, bool ShouldCaptureReturnValue, System.Collections.ObjectModel.ReadOnlyCollection<Microsoft.VisualStudio.Debugger.Stepping.DkmSteppingCodePath> CurrentCodePaths, string CurrentMethodName, Microsoft.VisualStudio.Debugger.DkmDataItem DataItem);
public static Microsoft.VisualStudio.Debugger.Stepping.DkmStepper Create (Microsoft.VisualStudio.Debugger.DkmThread Thread, Microsoft.VisualStudio.Debugger.DkmInstructionAddress? StartingAddress, ulong FrameBase, Microsoft.VisualStudio.Debugger.Stepping.DkmStepKind StepKind, Microsoft.VisualStudio.Debugger.Stepping.DkmStepUnit StepUnit, Guid SourceId, Microsoft.VisualStudio.Debugger.Stepping.DkmSteppingCodePath? CodePath, Microsoft.VisualStudio.Debugger.Stepping.DkmStepper? CrossThreadParent, bool ShouldCaptureReturnValue, System.Collections.ObjectModel.ReadOnlyCollection<Microsoft.VisualStudio.Debugger.Stepping.DkmSteppingCodePath>? CurrentCodePaths, string? CurrentMethodName, Microsoft.VisualStudio.Debugger.DkmDataItem? DataItem);
static member Create : Microsoft.VisualStudio.Debugger.DkmThread * Microsoft.VisualStudio.Debugger.DkmInstructionAddress * uint64 * Microsoft.VisualStudio.Debugger.Stepping.DkmStepKind * Microsoft.VisualStudio.Debugger.Stepping.DkmStepUnit * Guid * Microsoft.VisualStudio.Debugger.Stepping.DkmSteppingCodePath * Microsoft.VisualStudio.Debugger.Stepping.DkmStepper * bool * System.Collections.ObjectModel.ReadOnlyCollection<Microsoft.VisualStudio.Debugger.Stepping.DkmSteppingCodePath> * string * Microsoft.VisualStudio.Debugger.DkmDataItem -> Microsoft.VisualStudio.Debugger.Stepping.DkmStepper
Public Shared Function Create (Thread As DkmThread, StartingAddress As DkmInstructionAddress, FrameBase As ULong, StepKind As DkmStepKind, StepUnit As DkmStepUnit, SourceId As Guid, CodePath As DkmSteppingCodePath, CrossThreadParent As DkmStepper, ShouldCaptureReturnValue As Boolean, CurrentCodePaths As ReadOnlyCollection(Of DkmSteppingCodePath), CurrentMethodName As String, DataItem As DkmDataItem) As DkmStepper
Parameters
- Thread
- DkmThread
[In] DkmThread represents a thread running in the target process.
- StartingAddress
- DkmInstructionAddress
[In,Optional] The instruction address of the process at the time this step started. This will be NULL if the step originated on a thread with no frames (Script & Managed Only).
- FrameBase
- UInt64
[In] The frame base of the first frame at the beginning of the step. This value will be MAXUINT64 if the StartingAddress was not specified.
- StepKind
- DkmStepKind
[In] DkmStepKind describes how to step the thread when the Step Method is called.
- StepUnit
- DkmStepUnit
[In] DkmStepUnit describes the granularity of the step when the Step method is called.
- SourceId
- Guid
[In] Identifies the source of an object. SourceIds are used to enable filtering in scenarios when multiple components may be creating instances of a class. For example, source ids can be used to determine if a breakpoint comes from the AD7 AL (ex: user breakpoint, or other breakpoint visible at the SDM level) instead of a breakpoint which may be created by another component (for example an internal breakpoint used for stepping).
- CodePath
- DkmSteppingCodePath
[In,Optional] If StepKind is StepIntoSpecific, specifies which call we are stepping into. Otherwise it is NULL.
- CrossThreadParent
- DkmStepper
[In,Optional] If a new stepper is created using OnCrossThreadStepArbitration, the stepping manager will set this field to make it easy to get back to the original stepper if the cross thread step fails or needs to fallback. Deprecated. Use GetCrossThreadParent instead.
- ShouldCaptureReturnValue
- Boolean
[In] In managed debugging, it indicates if the stepper wanted to capture return value during stepping. Default it is false.
- CurrentCodePaths
- ReadOnlyCollection<DkmSteppingCodePath>
[In,Optional] In managed debugging, it contains all code paths in current step range. Otherwise it is NULL.
- CurrentMethodName
- String
[In,Optional] In managed debugging, it contains current method name. Otherwise it is NULL.
- DataItem
- DkmDataItem
[In,Optional] Data object to add to the new DkmStepper instance. Pass 'null' in the case that the caller doesn't need to add a data item.
Returns
[Out] Result of this method call.