[c#] 我該如何補救“斷點不會被擊中。 沒有符號被載入這個文件。“警告?


Answers

首先嘗試通過鼠標右鍵單擊項目>重建來重建項目如果這不起作用,請嘗試清理項目(右鍵單擊項目>清理)

如果這不起作用檢查這一點:

  1. 用鼠標右鍵單擊您的項目
  2. 選擇[屬性]
  3. 選擇[Build]選項卡
  4. 確保選中[Define DEBUG constant][Define TRACE constant]
  5. 點擊Build頁面底部的[Advanced]按鈕
  6. 確保[調試信息:]設置為[完整]
  7. 點擊[確定]並重建項目;-)

(第6步生成.pdb文件,這些是調試符號)

Question

C#桌面應用程序快速版。 然後工作5秒鐘後不工作。

我嘗試了以下。

  • 確保在所有組件上設置調試配置,調試標誌和完整調試信息。
  • 從我的整個機器上刪除所有bin和obj文件夾以及與該項目相關的所有DLL。
  • 重新創建導致問題的項目。
  • 重啟。

我在解決方案中有兩個WinForms項目。 其中一個加載調試信息,一個不加載。 他們都參考了我試圖在項目文件中以完全相同的方式獲取調試信息的程序集。 有任何想法嗎?

我想在這裡添加,主要是為了我自己,當我回來審查這個問題時,只有在程序集被加載之後才加載符號,程序集在需要的時候才加載。 如果斷點位於僅在主程序集中的一個函數中使用的庫中,則在調用該函數之前,符號將不會被加載(並且會顯示斷點未被命中)。




需要檢查的事項要清楚:確保您將配置設置為“調試”而不是“發布”。 您可以在'Release'模式下調試啟動項目,但不能調用引用的類庫。




我可以通過簡單地將'附加到進程'中的選項設置為'自動確定要調試的代碼類型'選項來修復錯誤,如附圖所示。

只需按照以下步驟操作:

  • 從菜單欄轉到調試
  • 點擊附加到進程
  • 在“ 附加到”選項附近,單擊“ 選擇”按鈕
  • 選擇代碼類型窗口將出現
  • 現在選擇自動確定要調試的代碼類型選項,然後單擊確定按鈕。




選定的答案讓我解決了我的問題。 但我需要做更多的事情:

即使在下拉列表中選擇了“調試”:

並在項目“屬性”>“生成”中:

Visual Studio沒有將符號加載到特定項目。 因此,在該下拉列表中,選擇“配置管理器”,看到我的web項目的設置不正確:

然後我將其設置為“調試”,並開始生成.pdb文件。 我需要手動複製PDB和DLL並放入VS正在查找的文件夾中(這裡是選定的答案幫助我):




我嘗試了上面提到的一切,但沒有任何工作。 [清理解決方案,並檢查PDB文件等]

即使發布相同的解決方案也不能解決問題。

然後我回到我通常要解決的問題上(愚弄這個頑固的Visual Studio)

我所做的只是對代碼進行有意的更改並發布解決方案。 然後我恢復了變化並再次發布。

Voila [PDB文件擺脫了邪惡的精神] ..不是一個聰明的決議,但這確實工作..: - |




在Debug / General設置中禁用“Just My Code”選項。




我正在使用VS10將一個C#應用程序與一個靜態庫集成 - 這是我的新手。 我寫了一個託管代碼DLL來連接它們。 除了靜態庫之外,我可以在任何地方設置斷點。 我收到了上述消息 - 沒有為此文檔加載符號。 我嘗試了上面的許多建議。 我可以看到符號沒有被加載。 我終於注意到一個複選框配置調試,啟用非託管代碼調試。 這允許我在靜態lib函數中設置斷點。




我們找到了我們問題的原因。 此代碼使用.aspx文件的Page指令中的“CodeBehind”屬性而不是“CodeFile”屬性(ASP.NET 2.0及更高版本)。 經過幾天的絕望,一個簡單的搜索和替換解決了這個問題。




我知道我晚了幾年,但我認為我做了錯誤的事情,並按照上述步驟,然後我意識到我會將解決方案配置設置為'釋放'錯誤:)




檢查您的bin / Debug文件夾中是否缺少.pbd文件。 如果是,然後轉到項目的“屬性”,選擇“生成”,然後在底部選擇“高級”。 在出現的新窗口的“調試信息”下選擇“全部”。 這是我的問題,並為我解決了它。




我也有同樣的問題,我在x86(或x64)中重建整個解決方案(包括參考項目)

儘管我將所有項目都從Configuration Manager(Build-> ConfigManager)設置為x86,但我的一些項目werent設置為x86。

所以只要確保右鍵點擊project-> properties-> Debug Tab,驗證配置和平台。




嘗試在Windows中以管理員身份運行Visual Studio。




項目屬性(然後選擇你的構建配置)>構建選項卡>高級...>調試信息(下拉菜單)

設置為'all'或'pdb-only',然後重建




而不是僅僅做所有這些事情

關閉並重新打開

它將解決問題的解決方案




我嘗試了所有這些,無法讓我的突破點工作......

我做了什麼來解決這個問題

在我的斷點未擊中的頁面中,我選擇了文件夾>添加現有項目,然後從其保存路徑中選擇頁面。 這使得中斷點開始工作。




Related