2011-05-10 71 views
0

在搜索調試C#DLL時,我遇到了這篇文章。在C中調試DLL#

http://msdn.microsoft.com/en-us/library/c91k1xcf%28v=VS.100%29.aspx它說

您可以啓動調試DLL:

用來創建調用DLL可執行的項目。 或 該項目用於創建DLL本身。

我有可執行項目以及DLL的源代碼(C#)。

我的DLL項目是在一個不同的解決方案。

我想從我的EXE項目調試DLL。我該如何繼續。我已經搜查了古爾,但沒有任何詳細的步驟。我還將DLL項目添加到exe項目解決方案中,並在庫項目的源代碼中添加了斷點。但是斷點從未被擊中。調試器如何知道我已經加載了DLL的源代碼。我錯過了什麼?


更新:
繼Avitus和米克的建議,我加入了DLL項目exe文件的解決方案。還添加了對DLL項目的引用,並且命中了斷點。

我也試圖通過

項目通過DLL項目進行調試 - 性能 - 調試和設置在開始外部程序的EXE。在這種情況下,中斷點沒有命中,它一直說調試符號沒有加載。我在這裏嘗試了所有選項,沒有任何成功 配置被設置爲活動(調試)。 調試信息已設置爲已滿。 在工具 - 選項 - 調試(只啓用我的代碼[託管代碼]未選中) 在工具 - 選項 - 調試 - 符號,我有所有模塊,除非選擇排除,並指定排除模塊列表爲空。由於某種原因,此方法無效。

+1

你不能只在同一個解決方案下有兩個項目,然後從你的exe項目引用你的dll項目嗎? – Avitus 2011-05-10 20:18:22

+0

或者將dll的調試目標設置爲可執行文件。 – 2011-05-10 20:20:18

+0

@ Avitus ..我不想更改任何代碼進行調試。 – Talk2me 2011-05-10 20:35:04

回答

0

的DLL必須有一個調試的數據庫,或者基本上你必須包括DLL在你調試它的解決方案的解決方案。

還有Visual Studio中有一個創建測試功能,產生了一堆試驗的方法和功能。

+0

我已將我的DLL項目添加到我的解決方案中。但我的問題是,visual studio如何知道它必須指向實際的代碼而不是DLL方法。 – Talk2me 2011-05-10 20:42:18

+0

@ Talk2Me你應該確保你的.exe項目使用了一個項目引用(當你添加引用時,從「項目」標籤中添加它) – Michael 2011-05-10 22:19:08

+0

@Mick ...非常感謝你的工作。這節省了很多時間。 – Talk2me 2011-05-11 14:03:59