VS 調試時出現「無可用源碼」並自動打開反彙編視窗,常見於調試 Release 版本、缺少 PDB 符號文件、進入系統庫函數、或斷點設置在無調試信息的代碼行。
| 原因 | 現象 | 解決方法 |
|---|---|---|
| 編譯配置為 Release | 優化導致代碼行映射失效、變量被優化掉 | 切換至 Debug 配置重新構建 |
| PDB 符號文件不匹配/丟失 | 模塊載入時「符號未載入」 | 清理解決方案 → 重新生成;或在「模塊」視窗右鍵「載入符號」指定 .pdb 路徑 |
| 調試系統/第三方庫 | 進入無源碼的 DLL(如 ntdll.dll、kernel32.dll) | 安裝對應符號包(微軟符號服務器),或在「選項→調試→符號」勾選 Microsoft Symbol Servers |
| 斷點設置在非執行代碼行 | 如大括號、註釋、空行 | 移動斷點至可執行語句 |
/Od),生成完整 PDB。
反彙編是「核武器級」工具:平時不用,關鍵時刻能救命,但需扎實計算機組成原理與彙編基礎才能駕馭。