.NET - 如何调试DLL?

时间:2010-04-12 13:09:57

标签: asp.net debugging dll

我需要调试作为DLL提供给主项目(ASP.NET网站)的类库项目。例如,我需要设置一些断点以检查执行期间发生的情况。

我尝试了 How to: Debug from a DLL Project ,不幸的是它没有用......

我该怎么做?

PS:我有源代码!

3 个答案:

答案 0 :(得分:8)

如果您的BIN目录中有源代码和.pdb文件,那么您可以通过该代码进行调试。但是,您需要在Visual Studio中启用外部代码调试。

您需要取消选中“启用我的代码”选项:菜单工具 - > 选项 - > 调试 - > 启用我的代码

注意:这仅适用于.NET程序集。

答案 1 :(得分:3)

Debugging DLLs in Visual Studio (请参阅列表中的第2条)可能是您正在寻找的内容(完全披露:是的,这是我的个人网站)。

  • 使用方法#1,您无法观察变量。

  • 使用方法#2,步骤#2,如果无法在同一个Visual Studio实例中打开项目,则可以运行项目的二进制文件(即,在Visual Studio外部运行它,但是确保运行调试版本。)并将Visual Studio调试器附加到它(菜单调试 - > 附加到进程)。

以下是方法#2的步骤,因此没有人必须遵循链接:

将使用过程附加到DLL项目。这涉及将Visual Studio调试器挂钩到正在运行的进程中。

  1. 在Visual Studio中打开DLL项目。
  2. 运行使用DLL的应用程序。这个 应用程序无法运行 自从以来的另一个Visual Studio实例 进程已经有一个调试器 附在它上面。
  3. 从这里您可以添加断点并逐步完成 在Visual Studio中加载的DLL代码(尽管如此 断点将显示为禁用 与方法1)相同。

答案 2 :(得分:0)

构建类库项目时,会在该类库的DebugRelease文件夹中创建.pdb文件。当您右键单击并选择“添加引用”选项并指向类库项目的DLL文件时,ASP.NET项目会引用这两个文件。