HOW TO:使用呼叫堆疊視窗
更新:2007 年 11 月
這個主題適用於:
版本 |
Visual Basic |
C# |
C++ |
Web Developer |
---|---|---|---|---|
Express 版 |
||||
Standard 版 |
||||
Pro/Team 版 |
表格圖例:
套用 |
|
不套用 |
|
預設隱藏的命令。 |
您可以使用 [呼叫堆疊] 視窗來檢視目前堆疊上的函式或程序呼叫。
呼叫堆疊視窗中顯示出每一個函式的名稱和撰寫時所使用的程式設計語言。函式或程序名稱可能還含選擇性資訊,如模組名稱、行號、位元組位移、參數名稱、型別和值。您可以選擇開啟或關閉這個選擇性資訊。
執行指標目前所在的堆疊框架位置會以黃色箭頭識別。根據預設,這就是資訊會顯示在來源、[反組譯碼]、[區域變數]、[監看式] 和 [自動變數] 視窗中的框架。如果您想要將內容變更至堆疊上的其他框架,可以在 [呼叫堆疊] 視窗中進行這個動作。
當部分呼叫堆疊無法使用偵錯符號時,[呼叫堆疊] 視窗可能無法顯示該部分呼叫堆疊的正確資訊。就會出現下列標記法:
[下面的框架可能錯誤及/或遺失,未載入 name.dll 的符號]
在 Managed 程式碼中,[呼叫堆疊] 視窗會根據預設隱藏非使用者程式碼的資訊。會出現下列標記法,而不是隱藏的資訊:
[<External Code>]
非使用者程式碼是不屬於 "My Code" 的任何程式碼。如需 "My Code" 的詳細資訊,請參閱 HOW TO:逐步執行 Just My Code。您可以使用快速鍵功能表選擇顯示非使用者程式碼的呼叫堆疊資訊。
根據預設,[呼叫堆疊] 視窗不會顯示與另一個執行緒之間的往來呼叫。您可以使用快速鍵功能表選擇查看這些呼叫。
注意事項: |
---|
根據您目前使用的設定或版本,您所看到的對話方塊與功能表命令可能會與 [說明] 中描述的不同。如果要變更設定,請從 [工具] 功能表中選擇 [匯入和匯出設定]。如需詳細資訊,請參閱 Visual Studio 設定。 |
在中斷模式或執行模式中顯示呼叫堆疊視窗
- 在 [偵錯] 功能表上,選擇 [視窗],然後按一下 [呼叫堆疊]。
若要變更所顯示的選擇性資訊
- 以滑鼠右鍵按一下 [呼叫堆疊] 視窗,並設定或清除 [顯示<您想要的資訊>]。
若要在呼叫堆疊視窗中顯示非使用者程式碼框架
- 以滑鼠右鍵按一下 [呼叫堆疊] 視窗,然後選擇 [顯示外部程式碼]。
若要切換到另一個堆疊框架
在 [呼叫堆疊] 視窗中,以滑鼠右鍵按一下想要檢視之程式碼和資料的框架。
選取 [切換至框架]。
在您選取的框架旁邊會出現尾端彎曲的綠色箭號。執行指標會留在原來的框架中,並仍以黃色箭頭標示。如果您從 [偵錯] 功能表中選取 [逐步執行] 或 [繼續],則會從原本的框架而非選取的框架繼續執行。
若要顯示與另一個執行緒之間的往來呼叫
- 以滑鼠右鍵按一下 [呼叫堆疊] 視窗,然後選擇 [包含至/從其他執行緒的呼叫]。
若要檢視呼叫堆疊上的函式的原始程式碼
- 在 [呼叫堆疊] 視窗,以滑鼠右鍵按一下您要查看原始程式碼的函式,然後選擇 [移至原始程式碼]。
若要檢視呼叫堆疊上的函式的反組譯程式碼
- 在 [呼叫堆疊] 視窗中,以滑鼠右鍵按一下您要查看反組譯程式碼的函式,然後選擇 [移至反組譯碼]。
若要從 [呼叫堆疊] 視窗執行至特定函式
- 請參閱執行至指定的函式。
若要在函式呼叫的結束點設定中斷點
- 如需詳細資訊,請參閱 HOW TO:從呼叫堆疊視窗在函式呼叫上設定中斷點
若要載入模組的符號
- 在 [呼叫堆疊] 視窗中,以滑鼠右鍵按一下顯示您要重新載入符號之模組的框架,然後選擇 [載入符號]。
載入符號
在 [呼叫堆疊] 視窗中,您可以載入目前尚未載入符號之程式碼的偵錯符號。這些符號可能是從 Microsoft 公用符號伺服器下載的 .NET Framework 或系統符號,或是您所偵錯之電腦上符號路徑中的符號。
如需詳細資訊,請參閱 HOW TO:使用符號伺服器和 HOW TO:指定符號路徑。
若要載入符號
在 [呼叫堆疊] 視窗中,以滑鼠右鍵按一下未載入符號的框架。該框架隨即變成暗灰色。
指向 [載入符號來源],然後按一下 [Microsoft 符號伺服器] 或 [符號路徑]。
若要設定符號路徑
在 [模組] 視窗中,以滑鼠右鍵按一下任一模組。
按一下 [符號設定]。
[選項] 對話方塊隨即開啟,並顯示 [符號] 頁面。
在 [選項] 對話方塊中,按一下 [資料夾] 圖示。
游標隨即出現在 [符號檔 (.pdb) 位置] 方塊中。
輸入您要偵錯之電腦上符號位置的目錄路徑名稱。在本機偵錯中,這是您的本機電腦;在遠端偵錯中,則是遠端電腦。
按一下 [確定] 關閉此 [選項] 對話方塊。