次の方法で共有


DkmNativeInstructionSymbol.GetSteppingRanges メソッド

定義

オーバーロード

GetSteppingRanges(DkmModuleInstance, DkmInstructionAddress, DkmSteppingRangeBoundary, Boolean)

シンボル プロバイダーに対してクエリを実行して、基本デバッグ モニターがステップを実装するためにステップ実行する必要がある命令の範囲を決定します。

場所の制約: API は、Monitor コンポーネント (コンポーネント レベル < 100,000) から呼び出す必要があります。

この API は、Visual Studio 14 RTM (DkmApiVersion.VS14RTM) で導入されました。

GetSteppingRanges(DkmWorkList, DkmModuleInstance, DkmInstructionAddress, DkmSteppingRangeBoundary, Boolean, DkmCompletionRoutine<DkmGetSteppingRangesAsyncResult>)

シンボル プロバイダーに対してクエリを実行して、基本デバッグ モニターがステップを実装するためにステップ実行する必要がある命令の範囲を決定します。

このメソッドは、指定した作業リストに新しい作業項目を追加し、作業項目が追加されると を返します。 作業項目の実際の処理は非同期です。 呼び出し元は、完了ルーチンを通じて要求が完了したことを通知されます。

場所の制約: API は、Monitor コンポーネント (コンポーネント レベル < 100,000) から呼び出す必要があります。

この API は、Visual Studio 14 RTM (DkmApiVersion.VS14RTM) で導入されました。

GetSteppingRanges(DkmModuleInstance, DkmInstructionAddress, DkmSteppingRangeBoundary, Boolean)

シンボル プロバイダーに対してクエリを実行して、基本デバッグ モニターがステップを実装するためにステップ実行する必要がある命令の範囲を決定します。

場所の制約: API は、Monitor コンポーネント (コンポーネント レベル < 100,000) から呼び出す必要があります。

この API は、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()

パラメーター

ModuleInstance
DkmModuleInstance

[入力]現在の命令シンボルを含むモジュール インスタンス。

StepStartingAddress
DkmInstructionAddress

[入力,省略可能]ステップが開始された場所の指示。 スタックにフレームがない状態でステップを開始するなど、通常とは異なる状況では null になる可能性があります。 これは必ずしもネイティブ命令ではないことに注意してください。

RangeBoundary
DkmSteppingRangeBoundary

[入力]"ステップなし" 領域に含める命令の種類をシンボル プロバイダーに示します。

IncludeInline
Boolean

[入力]True を指定すると、インライン関数が検出されたときにシンボル プロバイダーがステップ実行範囲を停止する必要があります。 それ以外の場合は false です。 Native DM は のステップに対して true を渡すので、ステップはインライン関数で停止します。 ステップオーバーを実行すると false が渡されるため、ステッパーはインライン関数で停止しません。

戻り値

[出力]ステップ実行する範囲の配列。 指定された命令のソース情報がない場合、この配列は空になります。

適用対象

GetSteppingRanges(DkmWorkList, DkmModuleInstance, DkmInstructionAddress, DkmSteppingRangeBoundary, Boolean, DkmCompletionRoutine<DkmGetSteppingRangesAsyncResult>)

シンボル プロバイダーに対してクエリを実行して、基本デバッグ モニターがステップを実装するためにステップ実行する必要がある命令の範囲を決定します。

このメソッドは、指定した作業リストに新しい作業項目を追加し、作業項目が追加されると を返します。 作業項目の実際の処理は非同期です。 呼び出し元は、完了ルーチンを通じて要求が完了したことを通知されます。

場所の制約: API は、Monitor コンポーネント (コンポーネント レベル < 100,000) から呼び出す必要があります。

この API は、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))

パラメーター

WorkList
DkmWorkList

新しい作業項目を追加する WorkList。

ModuleInstance
DkmModuleInstance

[入力]現在の命令シンボルを含むモジュール インスタンス。

StepStartingAddress
DkmInstructionAddress

[入力,省略可能]ステップが開始された場所の指示。 スタックにフレームがない状態でステップを開始するなど、通常とは異なる状況では null になる可能性があります。 これは必ずしもネイティブ命令ではないことに注意してください。

RangeBoundary
DkmSteppingRangeBoundary

[入力]"ステップなし" 領域に含める命令の種類をシンボル プロバイダーに示します。

IncludeInline
Boolean

[入力]True を指定すると、インライン関数が検出されたときにシンボル プロバイダーがステップ実行範囲を停止する必要があります。 それ以外の場合は false です。 Native DM は のステップに対して true を渡すので、ステップはインライン関数で停止します。 ステップオーバーを実行すると false が渡されるため、ステッパーはインライン関数で停止しません。

CompletionRoutine
DkmCompletionRoutine<DkmGetSteppingRangesAsyncResult>

要求が完了したときに起動するルーチン。 要求が作業リストに正常に追加された場合、これは常に発生します (操作が取り消されたときを含む)。 作業項目の追加が失敗した場合、このエラーは発生しません。

適用対象