起初,我以為是沒有生成.pdb文件的緣故,於是,我右擊項目文件,點擊屬性,展開配置屬性節點,展開C/C++節點, 點擊了General后把Debug Information Format設置為:Program Database for Edit & Continue(/ZI). 跟着,又檢查了其它選項,並且確信在項目文件的Debug文件夾下生成了相應的.pdb文件。
可是做了這些,還是沒用。仍然彈出那個該死的對話框。
我於是另外新啟動了一個VS實例,新建了一個簡單的工程,按下F5, 調試沒問題,嘿,這問題到底出在哪兒呢??
然后,我心想,你丫狠!看來我得來點比你更狠的,於是乎,我干脆運行咱的.exe文件,然后單擊Visual Studio 的Tools菜單,選擇Attach to process..., 並找到我的應用程序,還是沒用!!!!我要發瘋了!!!!
關鍵時刻咱得保持冷靜!!!!分析下!
第一,我這個工程是前幾天做過的。
第二,.pdb文件有,手動加載文件也試過。不過沒用。
第三,新建一個項目調試,沒問題。
腦袋里突然冒出:是不是.suo文件在作怪??
------解決方案-----
1. 關閉掉Visual Studio 實例。
2. 找到解決方案下的.suo文件並刪除之。
3. 重新啟動Visual Studio,或者直接雙擊.sln文件打開
4. 成功調試程序!
后來意識到這是Visual Studio非常嚴重的問題。因為.suo貌似非常容易損壞,但是它里面包含了許多調試信息,包括項目的打開文件列表、所有的斷點、以及監視窗口中所有的內容。
可以運行如下命令來刪除掉該文件:del /f /a:h /s *.suo
希望對遇到該類問題的朋友有所幫助!!歡迎提出問題討論!
另外 有一些解決方法:
首先打開菜單 項目->項目屬性頁 選擇 配置屬性->鏈接器->調試->生成調試信息 改為 是 選擇 配置屬性->C/C++ ->常規->調試信息格式 改為 用於“編輯並繼續”的程序數據庫(/ZI) 選擇 配置屬性->C/C++ ->優化->優化 改為 禁用(/Od)