2010-11-30 122 views
2

我有一个使用第三方库(Open Scene Graph)的VS 2008 C++项目。将Visual Studio 2008指向第三方DLL的源代码进行调试

当我开始调试项目时,每次调用该外部库中的函数时,调试器都会跳过它,因为(显然)调试器没有.cpp文件查找代码的位置。它只跳转到链接到我的项目的头文件,因为这些文件存在并且它们的位置是已知的。所以,我只能看到这些小型内联函数中发生了什么,但不是在实现处于.cpp文件中的更大函数中,而我没有。

我需要的是以某种方式步骤通过这些第三方dll/libs的源代码,就像我自己的代码一样。

我下载了该库的整个源代码并将其编译到我的机器上。现在我有了dll和libs,.pdb文件和.cpp文件。但是,我如何告诉Visual Studio第三方库的.cpp文件的位置,以便它知道,当我想要进入来自.dll或.lib的函数时,它会打开相应的文件。 cpp文件(即使它不在我的项目中,并且位于完全不同的文件夹中)?

这是可能的吗?

我试图将.libs,.dlls(调试版本),.pdbs复制到我的项目使用和“附加库目录”以及项目文件夹的位置,但这一定不够。

回答

2

将具有PDB文件的目录添加到工具 - >选项 - >调试 - >符号。

+0

检查http://www.symbolsource.org/是说我还需要指定源代码的位置。对于Microsoft产品,使用了专门用于.pdb和.cpp文件的服务器,但我工作的库(Open Scene Graph)当然不是Microsoft的,所以它不在服务器上! – Igor 2010-12-01 09:34:41