[研究]Visual Studio 2019 Enterprise 無法叫用中斷點 (停用偵錯最佳化)
2024-03-19、2024-03-25更新
環境:Visual Studio 2022 + ASP.NET + WebForm + Web Application + C# + SQL Server 2019 + SQL Server Management Studio (SSMS) 19
********************************************************************************
********************************************************************************
Visual Studio 2019 Enterprise 調試出現 "無法叫用中斷點" 原因 ? 解決 ?
ChatGPT
"無法叫用中斷點"(Unable to invoke breakpoint)是 Visual Studio 中的常見錯誤,它可能由多種原因引起。 以下是一些可能的原因和解決方法:
- 符號載入問題:這可能是由於符號(symbol)載入失敗而導致的。 在偵錯時,Visual Studio 需要載入符號資訊以便正確設定斷點和追蹤程式碼。 您可以嘗試清除解決方案並重新生成,或確保您的符號伺服器和符號載入路徑設定正確。
- 檔案損壞或損壞的快取:有時專案檔案或 Visual Studio 快取可能會損壞,導致偵錯過程中出現問題。 您可以嘗試刪除專案資料夾中的臨時檔案(如 .vs 資料夾)並重新啟動 Visual Studio。
- 調試引擎問題:在某些情況下,可能是由於調試引擎本身出現問題而導致的。 您可以嘗試重新啟動 Visual Studio,或嘗試更新至最新版本。
- 程式碼最佳化問題:某些程式碼最佳化選項可能會導致偵錯器無法設定斷點。 您可以嘗試在項目屬性中停用最佳化,看看是否有所改善。
- 並行偵錯問題:如果您同時使用了多個偵錯器(例如同時偵錯 C# 和 C++ 程式碼),則可能會出現問題。 嘗試僅使用一個調試器進行調試,看看是否解決了問題。
- 第三方外掛程式問題:某些第三方外掛程式可能會幹擾 Visual Studio 的偵錯功能。 您可以嘗試停用所有插件,然後逐一重新啟用以尋找問題的根源。
- 權限問題:在某些情況下,權限問題可能會導致偵錯器無法正常運作。 確保您對專案文件和偵錯器有適當的權限。
- 防毒軟體幹擾:某些防毒軟體可能會幹擾調試器的正常運作。 您可以嘗試停用防毒軟體並重新嘗試偵錯。
- 系統問題:在某些情況下,系統問題可能會導致偵錯器出現問題。 確保您的作業系統和 Visual Studio 安裝是最新的,並且您的系統沒有其他已知問題。
如果嘗試了上述解決方法後仍然無法解決問題,您可能需要更詳細地調查並可能需要聯絡 Microsoft 支援或社群以獲得進一步的協助。
********************************************************************************
【解決】
把 Visual Studio 2019 中執行的程式,停止,再 Debug 跑一次,問題依舊。
把 Visual Studio 2019 關閉,重新啟動 Visual Studio 2019,載入該方案,再跑一次,問題依舊。
把 Visual Studio 2019 關閉,改用 Visual Studio 2012,中斷點有效,但無法檢視值,有「停用受控最佳化並重新啟動偵錯」問題。
(下圖)Visual Studio 2019 顯示「無法取得區域變數或引數的值,因為無法在這個指令指標使用,可能是它已經被最佳化改變了。」,沒有停用的按鈕。
(下圖)Visual Studio 2012 顯示「變數值無法使用,因為模組已優化。按一下下拉式清單以查看選項」,有「停用」的按鈕,顯示「停用受控最佳化並重新啟動偵錯」。
********************************************************************************
Visual Studio 2019 如何 "停用受控優化並重新啟動調試" ?
ChatGPT
在 Visual Studio 2019 中,您可以透過下列步驟停用受控優化並重新啟動偵錯:
- 在 Visual Studio 中開啟您的專案。
- 在頂部功能表列中選擇 "工具"(Tools)。
- 在下拉式選單中選擇 "選項"(Options)。
- 在彈出的視窗中,在左側導覽列中選擇 "偵錯"(Debugging)。
- 在右側窗格中,您會看到一個名為 "停用受控優化並重新啟動調試"(Disable Just My Code and Restart)的選項。
- 選取該選項,然後按一下視窗底部的 "確定"(OK)按鈕以儲存變更。
執行上述步驟後,Visual Studio 將停用受控優化並重新啟動偵錯,以便更好地追蹤程式碼的執行和偵錯。
(下圖) Visual Studio 2019 Enterprise 畫面
(下圖)把「偵錯」的「啟用 Just My Code」的勾選取消,按下「確定」按鈕。
https://learn.microsoft.com/zh-tw/visualstudio/debugger/general-debugging-options-dialog-box
沒有留言:
張貼留言