沒有可用於當前位置的源代碼

調試時候蹦出一個對話框“沒有可用於當前位置的源代碼” 確定,或 顯示彙編,調試無法進入一個函數,之後這函數就完了,死活不被調用了。

 

產生原因不明~~

以下是微軟官方的解釋:

沒有可用於當前位置的源代碼

項目不包含您試圖查看代碼的源代碼。原因通常是雙擊了“調用堆棧”窗口或“線程”窗口中沒有源代碼的模塊。可以繼續調試,但不能使用源代碼窗口設置斷點並在此位置執行其他操作。如果需要設置斷點,請使用“反彙編”窗口。

另一可能原因是:試圖調試託管代碼的轉儲文件。Visual Studio 僅支持使用 SOS 工具,在“即時”窗口中對託管的小型轉儲進行調試。有關信息,請參見如何:使用 SOS 和 SOS 調試擴展 (SOS.dll)

在解決方案屬性頁中,可以更改調試器查找源文件的目錄,並通知調試器忽略選定的源文件。請參見 “解決方案屬性頁”對話框 ->“通用屬性”->“調試源文件”

自動顯示反彙編

禁用該對話框並在無源代碼可用時自動啓動“反彙編”窗口。

顯示反彙編

啓動“反彙編”窗口,但不禁用此對話框。

 

該屬性頁指定調試解決方案時調試器查找源文件的位置。

若要訪問“調試源文件”屬性頁,右鍵單擊“解決方案資源管理器”中的“解決方案”,並從快捷菜單中選擇“屬性”。展開“通用屬性”文件夾並單擊“調試源文件”頁。

包含源代碼的目錄

包含調試器在調試解決方案時搜索源文件的目錄列表。

不查找下面這些源文件

輸入不希望調試器讀取的任何文件的名稱。如果調試器在以上指定的某個目錄中找到這些文件之一,它將忽略該文件。如果在調試期間出現“查找源”對話框,這時您單擊“取消”,那麼,您搜索的文件將被添加到此列表中,以使調試器不再繼續搜索該文件。

 

照着上面的方法試了下 仍然不管用,查找了一些其他的解決方法:

 

1. 工具->選項->調試->常規->去掉“要求源文件與原始版本完全匹配”複選框就OK

2. (嚴重不推薦!)將這個函數重新換個名字!

3. (嚴重不推薦!)將這個函數註釋了,然後再在旁邊重新寫一個,代碼一樣。

 

好吧改個函數名確實好用了,然後我嘗試把項目的debug文件刪掉,然後把函數名改回來,居然好用了~~

發佈了17 篇原創文章 · 獲贊 9 · 訪問量 12萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章