共用方式為


中斷點相關的方法

偵錯引擎 (DE) 必須支援中斷點的設定。 Visual Studio 偵錯支援下列中斷點類型:

  • 繫結

    透過 UI 要求並成功繫結至指定的程式碼位置

  • 待定

    透過 UI 要求,但尚未繫結至實際指令

討論

例如,當指令尚未載入時,就會發生暫止斷點。 載入程式碼時,暫止中斷點會嘗試繫結到指定位置的程式碼,也就是在程式碼中插入中斷指令。 事件將傳送到工作階段偵錯管理員 (SDM),以指示成功繫結或通知發生繫結錯誤。

暫止中斷點也會管理它自己的內部對繫結中斷點清單。 一個暫止中斷點可能會導致在程式碼中插入許多中斷點。 Visual Studio 偵錯 UI 顯示暫止中斷點及其對應繫結中斷點的樹狀結構檢視。

建立和使用暫止中斷點需要實作 IDebugEngine2::CreatePendingBreakpoint 方法,以及 IDebugPendingBreakpoint2 介面的下列方法。

方法 描述
CanBind 判斷指定的暫止中斷點是否可以繫結至程式碼位置。
Bind 將指定的暫止中斷點繫結至一或多個程式碼位置。
GetState 取得暫止中斷點的狀態。
GetBreakpointRequest 取得用來建立暫止中斷點的中斷點要求。
啟用 切換暫止中斷點的啟用狀態。
EnumBoundBreakpoints 列舉從暫止中斷點繫結的所有中斷點。
EnumErrorBreakpoints 列舉暫止中斷點所產生的所有錯誤中斷點。
刪除 刪除暫止中斷點,以及從中繫結的所有中斷點。

若要列舉繫結中斷點和錯誤中斷點,您必須實作 IEnumDebugBoundBreakpoints2IEnumDebugErrorBreakpoints2 的所有方法。

繫結至程式碼位置的暫止中斷點需要實作下列 IDebugBoundBreakpoint2 方法。

方法 描述
GetPendingBreakpoint 取得包含中斷點的暫止中斷點。
GetState 取得繫結中斷點的狀態。
GetBreakpointResolution 取得描述中斷點的中斷點解析。
啟用 啟用或停用中斷點。
刪除 刪除繫結中斷點。

解析和要求資訊需要實作下列 IDebugBreakpointResolution2 方法。

方法 描述
GetBreakpointType 取得解析所表示之中斷點的類型。
GetResolutionInfo 取得描述中斷點的解析資訊。

解析繫結期間可能發生的錯誤,需要實作下列 IDebugErrorBreakpoint2 方法。

方法 描述
GetPendingBreakpoint 取得包含錯誤中斷點的暫止中斷點。
GetBreakpointResolution 取得描述錯誤中斷點的中斷點錯誤解析。

解析繫結期間可能發生的錯誤也需要下列 IDebugErrorBreakpointResolution2 方法。

方法 描述
GetBreakpointType 取得中斷點的類型。
GetResolutionInfo 取得斷點的解析資訊。

在中斷點檢視原始程式碼時,您必須實作 IDebugStackFrame2::GetDocumentContext 和/或 IDebugStackFrame2::GetCodeContext 的方法。

另請參閱