0

我正在尝试调试我编写的由 Visual Studio 2010 中的应用程序使用的动态库。我可以进入直到我的 dll 的函数,但我无法更深入地查看源代码。如果我打开反汇编窗口,我可以进入 ASM 代码,但我看不到源代码或任何符号。

我已经构建了一个 .dll 和一个导入 .lib。与 dll 关联的 .pdb ( /Zi) 文件也已构建(使用/DEBUG)。优化被禁用 ( /Od)。

我的应用程序将导入库与 a 链接,#pragma comment(lib, "myImport.lib")因为该应用程序有一个我无法自己配置的构建工具。

我的应用程序在调试中运行,在调试器的模块中,我可以看到我的 dll 以及符号已加载。

我还检查了Options > Debugging > General Enable Just My Code选项已禁用。

如何强制VS2010进入我的dll的功能?

4

2 回答 2

0

我们有一个稍微不同的设置,我们启动另一个我们没有源代码的应用程序,然后从该应用程序加载我们自己构建的 dll。要对其进行调试,我们使用 Visual Studio 命令 Debug / Attach to Process... 也许此命令可以引导您成功调试 dll 的源代码。

于 2013-04-25T14:34:46.030 回答
0

正如您所料,这是编译不兼容。该 dll 是为 CLR 运行时 ( ) 编译的/clr。我猜是因为VS2010的默认配置。因为我删除了这个选项,所以一切都可以像往常一样调试。

于 2013-04-25T14:37:11.283 回答