2010-03-31 122 views
2

我有一个用VB.Net(Visual Studio 2008)编写的程序,它使用另一个开发人员用Visual C++编写的DLL。我希望能够进入C++代码,因为我的代码调用了DLL中的方法。由于DLL是它自己的解决方案,我不认为它可以包含在我的解决方案/项目中。我试图把我的build和pdb文件的其余部分放在debug/bin目录下。但是,当我逐步完成代码并进入dll调用时,它只是跨越了dll代码。我必须手动加载符号吗?不知道我做错了什么。谢谢。如何从VS2008调试DLL?

+3

请参阅:http://stackoverflow.com/questions/530808/debugging-a-dll-which-is-in-another-solution-on-vs2003 – 2010-03-31 17:41:57

+0

右键,以托管+非托管模式附加到进程。 – 2010-03-31 17:51:42

回答

2

为了调试这个DLL,你需要在这里做3件事。第一,正如你所提到的,要确保加载了本地DLL的符号,因为DLL是本地代码,下一步是启用非托管调试。要做到这一点

  • 右键单击该项目
  • 转到调试选项卡
  • 选中“启用非托管调试”复选框

的最后一件事是禁用“仅我的代码“为该项目。我不记得第二个DLL是否为本地时这是否是绝对必要的。但总的来说这是很好的做法,如果你正在调试的代码是不是你的解决方案的一部分

  • 工具 - >选项
  • 进入调试 - >常规
  • 取消选中“启用仅我的代码”