Visual Studio如何知道引用的DLL解决方案在哪里?

时间:2017-06-20 19:14:34

标签: visual-studio visual-studio-2017

我有两个解决方案,即解决方案A和解决方案B.

我从解决方案A编译了一个DLL并将其复制到解决方案B中的一个文件夹中。然后我在解决方案B中的项目中引用了该DLL。没有复制任何PDB文件。

当我在调试时,我能够介入DLL中引用解决方案A的代码。它打开源文件,路径与解决方案A的文件夹完全相同(即C:\ Work \解决方案A \ SomeFile.cs)

视觉工作室如何知道这一点?

1 个答案:

答案 0 :(得分:0)

如果你看,你的项目没有告诉它是在某个DLL中。所以你编译,它最终链接到你未解决的符号。这实际上是预期的。当DLL是解决方案的一部分时,它会通过 链接依赖库 自动执行。

构建DLL时,您应该注意到扩展名为.lib的文件。这是你的标签。如果将它作为链接器输入添加到项目中,那么项目将找到DLL中定义的符号并正确编译。

请看一下这个链接:https://msdn.microsoft.com/en-us/library/1ez7dh12.aspx