DkmStepper.Create 方法

定義

多載

Create(DkmThread, DkmInstructionAddress, UInt64, DkmStepKind, DkmStepUnit, Guid, DkmSteppingCodePath, DkmStepper, DkmDataItem)

DkmStepper 物件是由想要發出步驟的元件所建立。 用戶層級的階梯是由AD7-AL所建立。 若要初始化 Stepper 對象,必須呼叫 Enable。 Stepper 物件會即時執行,直到步驟完成或中止為止。

Create(DkmThread, DkmInstructionAddress, UInt64, DkmStepKind, DkmStepUnit, Guid, DkmSteppingCodePath, DkmStepper, Boolean, ReadOnlyCollection<DkmSteppingCodePath>, String, DkmDataItem)

DkmStepper 物件是由想要發出步驟的元件所建立。 用戶層級的階梯是由AD7-AL所建立。 若要初始化 Stepper 對象,必須呼叫 Enable。 Stepper 物件會即時執行,直到步驟完成或中止為止。

此 API 是在 Visual Studio 12 RTM (DkmApiVersion.VS12RTM) 中引進。

Create(DkmThread, DkmInstructionAddress, UInt64, DkmStepKind, DkmStepUnit, Guid, DkmSteppingCodePath, DkmStepper, DkmDataItem)

DkmStepper 物件是由想要發出步驟的元件所建立。 用戶層級的階梯是由AD7-AL所建立。 若要初始化 Stepper 對象,必須呼叫 Enable。 Stepper 物件會即時執行,直到步驟完成或中止為止。

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

參數

Thread
DkmThread

[In]DkmThread 代表在目標進程中執行的線程。

StartingAddress
DkmInstructionAddress

[In,Optional]此步驟開始時程式的指示位址。 如果步驟源自沒有框架的線程, (腳本 & 僅限受控) ,則這會是 NULL。

FrameBase
UInt64

[In]步驟開頭第一個畫面的框架基底。 如果未指定 StartingAddress,此值將會MAXUINT64。

StepKind
DkmStepKind

[In]DkmStepKind 說明如何在呼叫 Step 方法時逐步執行線程。

StepUnit
DkmStepUnit

[In]DkmStepUnit 描述呼叫 Step 方法時的步驟粒度。

SourceId
Guid

[In]識別物件的來源。 SourceId 可用來在多個元件可能建立類別實例的案例中啟用篩選。 例如,來源標識碼可用來判斷斷點是否來自AD7 AL (例如:用戶斷點或其他在SDM層級可見的斷點) ,而不是另一個元件所建立的斷點 (,例如用於逐步執行) 的內部斷點。

CodePath
DkmSteppingCodePath

[In,Optional]如果 StepKind 是 StepIntoSpecific,則指定我們要逐步執行的呼叫。 否則為 NULL。

CrossThreadParent
DkmStepper

[In,Optional]如果使用 OnCrossThreadStepArbitration 建立新的步驟程式,則逐步執行管理員會設定此字段,以在跨線程步驟失敗或需要後援時,輕鬆回到原始逐步執行程式。 已取代。 請改用 GetCrossThreadParent。

DataItem
DkmDataItem

[In,Optional]要加入至新 DkmStepper 實例的數據物件。 在呼叫端不需要加入數據項的情況下,傳遞 'null'。

傳回

[Out]這個方法呼叫的結果。

適用於

Create(DkmThread, DkmInstructionAddress, UInt64, DkmStepKind, DkmStepUnit, Guid, DkmSteppingCodePath, DkmStepper, Boolean, ReadOnlyCollection<DkmSteppingCodePath>, String, DkmDataItem)

DkmStepper 物件是由想要發出步驟的元件所建立。 用戶層級的階梯是由AD7-AL所建立。 若要初始化 Stepper 對象,必須呼叫 Enable。 Stepper 物件會即時執行,直到步驟完成或中止為止。

此 API 是在 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

參數

Thread
DkmThread

[In]DkmThread 代表在目標進程中執行的線程。

StartingAddress
DkmInstructionAddress

[In,Optional]此步驟開始時程式的指示位址。 如果步驟源自沒有框架的線程, (腳本 & 僅限受控) ,則這會是 NULL。

FrameBase
UInt64

[In]步驟開頭第一個畫面的框架基底。 如果未指定 StartingAddress,此值將會MAXUINT64。

StepKind
DkmStepKind

[In]DkmStepKind 說明如何在呼叫 Step 方法時逐步執行線程。

StepUnit
DkmStepUnit

[In]DkmStepUnit 描述呼叫 Step 方法時的步驟粒度。

SourceId
Guid

[In]識別物件的來源。 SourceId 可用來在多個元件可能建立類別實例的案例中啟用篩選。 例如,來源標識碼可用來判斷斷點是否來自AD7 AL (例如:用戶斷點或其他在SDM層級可見的斷點) ,而不是另一個元件所建立的斷點 (,例如用於逐步執行) 的內部斷點。

CodePath
DkmSteppingCodePath

[In,Optional]如果 StepKind 是 StepIntoSpecific,則指定我們要逐步執行的呼叫。 否則為 NULL。

CrossThreadParent
DkmStepper

[In,Optional]如果使用 OnCrossThreadStepArbitration 建立新的步驟程式,則逐步執行管理員會設定此字段,以在跨線程步驟失敗或需要後援時,輕鬆回到原始逐步執行程式。 已取代。 請改用 GetCrossThreadParent。

ShouldCaptureReturnValue
Boolean

[In]在 Managed 偵錯中,指出步驟程式是否要在逐步執行期間擷取傳回值。 默認為 false。

CurrentCodePaths
ReadOnlyCollection<DkmSteppingCodePath>

[In,Optional]在 Managed 偵錯中,它包含目前步驟範圍中的所有程式碼路徑。 否則為 NULL。

CurrentMethodName
String

[In,Optional]在 Managed 偵錯中,它包含目前的方法名稱。 否則為 NULL。

DataItem
DkmDataItem

[In,Optional]要加入至新 DkmStepper 實例的數據物件。 在呼叫端不需要加入數據項的情況下,傳遞 'null'。

傳回

[Out]這個方法呼叫的結果。

適用於