共用方式為


控制斷點的方法

斷點是在可執行程式碼中,操作系統會在此停止執行並進入除錯器的地方。 這可讓您分析目標和發出調試程式命令。

您可以依虛擬位址、模組及常式位移,或來源檔及行號 (處於來源模式時) 來指定岔斷點的位置。 如果您在沒有位移的常式上放置岔斷點,則在輸入該常式時會啟動岔斷點。

還有數種其他類型的中斷點:

  • 岔斷點可以與特定執行緒相關聯。

  • 中斷點可設定在觸發前允許透過一個地址的固定次數。

  • 岔斷點可以在觸發時自動發出特定命令。

  • 可以在不可執行的記憶體上設定中斷點,並監控該位置是否被讀取或寫入。

如果您在使用者模式中除錯多個處理程序,中斷點的集合取決於現行處理程序。 若要檢視或變更處理程序的岔斷點,您必須選取處理程序作為目前處理程序。 如需目前進程的詳細資訊,請參閱 控制進程和執行緒

用於控制和顯示中斷點的偵錯工具命令

若要控制或顯示中斷點,您可以使用下列方法:

在 WinDbg 中,有數個使用者介面元素可協助控制和顯示中斷點。 請參閱 在 WinDbg (傳統) 中設定中斷點

每個岔斷點都有一個十進位數,稱為與其相關聯的岔斷點 ID。 此數字可識別各種命令中的中斷點。

中斷點命令

您可以在斷點中包含命令,該命令會在斷點命中時自動執行。 例如,下列命令會在 MyFunction+0x47 暫停,轉存檔案,然後繼續執行。

0:000> bu MyFunction+0x47 ".dump c:\mydump.dmp; g" 

注意 如果您要從核心偵錯工具控制使用者模式偵錯工具,請勿在中斷點命令字串中使用 g (Go)。 串列介面可能無法跟上此命令,您將無法重新進入 CDB。 如需此狀況的詳細資訊,請參閱 從 核心偵錯工具控制 User-Mode 偵錯工具

中斷點數目

在核心模式中,您最多可以使用 32 個軟體中斷點。 在使用者模式中,您可以使用任意數目的軟體中斷點。

支援的處理器岔斷點數目取決於目標處理器架構。

條件式中斷點

您可以設定僅在特定條件下觸發的岔斷點。 如需這些類型中斷點的詳細資訊,請參閱 設定條件式中斷點

模棱兩可的斷點

在調試程式引擎的 10.0.25310.1001 版和更新版本中,現在支援模棱兩可的斷點解析。 模棱兩可的斷點可讓調試程式在特定斷點表達式解析為多個位置的案例中設定斷點。 如需詳細資訊,請參閱 不明确的斷點解析

另請參閱

使用斷點

斷點語法

bp, bu, bm (設定斷點)

無法解析的斷點(未解斷點)