瞭解追蹤樹狀目錄窗格
[ 追蹤樹狀結構] 窗格是 [瑕疵檢視器] 的焦點。 一般而言,您會逐步執行 [ 追蹤樹狀結構] 窗格中的程式碼,同時在 [ 原始程式碼 ] 窗格和 [ 狀態 ] 窗格中的值上監看程式碼的效果。
[ 追蹤樹狀結構] 窗格會組織成具有一系列可展開和可折迭節點的階層式結構。 階層表示導致執行其他元素的程式碼專案。 此格式可協助您解譯每個程式碼分支,並在逐步執行追蹤時輕鬆地顯示和隱藏程式碼區段。
下列螢幕擷取畫面顯示範例 [追蹤樹狀結構] 窗格。
[追蹤樹狀結構]窗格中的每個程式碼專案前面都會加上原始程式檔中的行號。 此編號可協助您在 [來源樹狀結構] 視窗和原始程式檔中找到程式碼專案。
原始程式碼窗格中的某些程式程式碼會對應至 [追蹤樹狀結構]窗格中的多個元素。 當程式程式碼造成多個動作時,就會發生這種狀況。 例如,如果函式呼叫參數是 IRQL,則包含函式呼叫的程式程式碼也可能包含呼叫來尋找目前的 IRQL,例如:
IoReleaseCancelSpinLock(KeGetCurrentIrql());
在此情況下, [追蹤樹狀結構] 窗格會包含 KeGetCurrentIrql 函式呼叫的重要元素、對 SDV 作業系統模型的幾個呼叫,以隨機產生 IRQL,然後使用傳回的 IRQL 呼叫 IoReleaseCancelSpinLock 。