2016-06-08 163 views
0

現狀:如何在沒有pdb文件的情況下進行調試?

  • 項目DEP是一個.NET類庫項目,使用VS2015開發,針對.NET 4.5
  • 項目A引用DEP.dll(在DLL,而不是源代碼項目本身)
  • 項目A和DEP是獨立的解決方案

當我在調試模式下建立DEP部分,然後我調試項目A,我仍然可以進入從DEP代碼,即使我沒有看到pdb文件在DEP的輸出文件夾中。我想知道如何調試DEP是可能的。我認爲總是需要pdbs才能進行調試。或者,在調試模式下構建的dll是否包含足夠的調試信息?

回答

6

每個程序都是可調試的。調試器最基本的功能是單步處理器指令,查看處理器寄存器並檢查內存。機器的靈魂。沒有PDB,你永遠不會得到的是能夠查看源代碼,單步語句和檢查命名變量。實際上修復沒有PDB的錯誤是非常不切實際的。

如果你實際上看到了源代碼,那麼這並不令人驚訝,調試器非常擅長定位PDB。如果你自己沒有複製它,那麼調試器可以在編譯器放置它的原始位置的項目的obj\Debug目錄中找到它。該PDB的路徑嵌入在可執行文件中。你可以找到它是如何找到它的,使用Debug> Windows> Modules,右鍵單擊該DLL並選擇Symbol Load Information。它向你展示了調試器尋找PDB的每一處。

+0

我看到源代碼。我不知道可執行文件包含PDB路徑 – bvgheluwe

相關問題