ICorDebugStepper 介面

表示偵錯工具在程式碼執行作業中所執行的步驟,做為命令的發出和完成之間的識別項,並可提供方法來取消步驟。

方法

方法 描述
Deactivate 方法 造成此 ICorDebugStepper 動作取消它收到的最後一個步驟命令。
IsActive 方法 取得值,這個值表示這個 ICorDebugStepper 是否目前正在執行步驟。
SetInterceptMask 方法 設定 CorDebugIntercept 值,指定已逐步執行的程式代碼類型。
SetRangeIL 方法 設定值,這個值表示呼叫 ICorDebugStepper::StepRange 會傳遞相對於機器碼的自變數值,還是傳遞至所逐步執行之方法的通用中繼語言 (CIL) 程式代碼。
SetUnmappedStopMask 方法 設定 CorDebugUnmappedStop 值,指定執行將停止的未對應的程式代碼類型。
Step 方法 讓這 ICorDebugStepper 可以單一逐步執行其包含的線程,並選擇性地繼續執行線程內呼叫的函式。
StepOut 方法 讓這個 ICorDebugStepper 能夠單一步驟完成其包含的線程,並在目前畫面格將控件傳回呼叫框架時完成。
StepRange 方法 讓這個 ICorDebugStepper 可以單一步驟完成包含的線程,並在到達超出指定範圍最後一個範圍的程式代碼時傳回 。

備註

介面 ICorDebugStepper 提供下列用途:

  • 它會做為發出之步驟命令與該命令完成之間的標識碼。

  • 它提供中央介面來封裝可執行的所有逐步執行。

  • 它提供一種方法來過早取消逐步執行作業。

每個線程可以有多個步驟程式。 例如,在逐步執行函式時可能會叫用斷點,而且使用者可能想要在該函式內啟動新的逐步執行作業。 由調試程式決定如何處理這種情況。 調試程式可能會想要取消原始逐步執行作業或巢狀兩個作業。 介面 ICorDebugStepper 支援這兩個選項。

如果 Common Language Runtime (CLR) 進行跨線程封送呼叫,則逐步執行程式可能會在線程之間移轉。

注意

這個介面不支援跨電腦或跨處理序的遠端呼叫。

需求

平台:請參閱系統需求

標頭:CorDebug.idl、CorDebug.h

程式庫:CorGuids.lib

.NET Framework 版本: 自 1.0 起提供

另請參閱