控制中斷點的方法
您可以在來源模式) 時指定中斷點的位置、模組和常式位移,或來源檔案和行號 (。 如果您在沒有位移的常式上放置中斷點,則會在該常式輸入時啟動中斷點。
有數種額外的中斷點:
中斷點可以與特定執行緒相關聯。
中斷點可以在觸發位址之前啟用固定數目的傳遞。
中斷點可以在觸發時自動發出特定命令。
中斷點可以在非可執行記憶體上設定,並針對要讀取或寫入該位置watch。
如果您要在使用者模式中偵錯多個進程,中斷點的集合取決於目前的進程。 若要檢視或變更進程的中斷點,您必須選取進程作為目前的進程。 如需目前進程的詳細資訊,請參閱 控制進程和執行緒。
用於控制及顯示中斷點的偵錯工具命令
若要控制或顯示中斷點,您可以使用下列方法:
使用 bl (中斷點清單) 命令來列出現有的中斷點及其目前狀態。
使用 .bpcmds (顯示中斷點命令) 命令來列出所有中斷點,以及用來建立中斷點的命令。
使用 bp (設定中斷點) 命令來設定新的中斷點。
使用 bu (Set Unresolved Breakpoint) 命令來設定新的中斷點。 使用 bu 設定的中斷點稱為無法解析的中斷點;它們的特性與 以 bp設定的中斷點不同。 如需完整詳細資料,請參閱 無法解析的中斷點 (bu 中斷點) 。
使用 bm (設定符號中斷點) 命令,在符合指定模式的符號上設定新的中斷點。 如果包含/d參數,則以bm設定的中斷點會與位址 (相關聯,例如bp中斷點) ;如果未包含此參數,它將無法解析 (,例如bu中斷點) 。
使用 ba (Access) 命令來設定 處理器中斷點,也稱為 資料中斷點。 當記憶體位置寫入、讀取時、執行為程式碼時,或核心 I/O 發生時,可以觸發這些中斷點。 如需完整詳細資料,請參閱 處理器中斷點 (ba 中斷點) 。
使用 bc (中斷點 Clear) 命令永久移除一或多個中斷點。
使用 bd (中斷點停用) 命令,暫時停用一或多個中斷點。
使用 ([啟用中斷點]) 命令來重新啟用一或多個停用的中斷點。
使用 br (中斷點 Renumber) 命令來變更現有中斷點的識別碼。
使用 bs (Update Breakpoint Command) 命令來變更與現有中斷點相關聯的命令。
使用 bsc (更新條件式中斷點) 命令來變更發生現有條件中斷點的條件。
在 WinDbg 中,有數個使用者介面元素可協助控制及顯示中斷點。 請參閱 在 WinDbg 中設定中斷點 (傳統) 。
每個中斷點都有一個十進位數,稱為與其相關聯的中斷點識別碼。 這個數位會識別各種命令中的中斷點。
中斷點命令
您可以在叫用中斷點時自動執行的中斷點中包含命令。 例如,下列命令會中斷 MyFunction+0x47、寫入傾印檔案,然後繼續執行。
0:000> bu MyFunction+0x47 ".dump c:\mydump.dmp; g"
注意 如果您要從核心偵錯工具控制使用者模式偵錯工具,請勿在中斷點命令字串中使用 g (Go) 。 序列介面可能無法跟上此命令,而您將無法細分為 CDB。 如需這種情況的詳細資訊,請參閱 從核心偵錯工具控制 User-Mode 偵錯工具。
中斷點數目
在核心模式中,您最多可以使用 32 個軟體中斷點。 在使用者模式中,您可以使用任意數目的軟體中斷點。
支援的處理器中斷點數目取決於目標處理器架構。
條件中斷點
您可以設定只在特定情況下觸發的中斷點。 如需這些中斷點類型的詳細資訊,請參閱 設定條件式中斷點。
模棱兩可的中斷點
在偵錯工具引擎的 10.0.25310.1001 版和更新版本中,現在支援模棱兩可的中斷點解析。 模棱兩可的中斷點可讓偵錯工具在特定案例中設定中斷點,其中中斷點運算式解析為多個位置。 如需詳細資訊,請參閱 模棱兩可的中斷點解析。