【发布时间】:2012-12-13 18:23:34
【问题描述】:
共有三个项目:
- 项目 A(我的项目,WPF .NET 4.5)
- 项目 B(使用 CLR 托管 C++ (.NET wrapper for the FANN library))
- 项目 C(用 C 制作的非托管项目,(FANN library))
在打开项目A的Visual Studio 2012中,我无法通过项目B进入项目C。
项目 B 和 C 是免费和开源的,我已经成功构建了它们。
项目 A 引用项目 B 的 DLL,如果找不到项目 C 的 DLL 文件,项目 A 将无法运行 - 所以我已将项目 C 的 DLL 复制并粘贴到项目中,并将“始终复制”设置为输出目录。
在调试过程中,我只能访问项目 B 的源代码。我什至没有看到模块窗口中加载了我根本不理解的项目 C。 如果没有包含项目 C 的 DLL,该项目将无法运行,并且当它被包含时,它不会加载,但所有调用都在工作,因此必须在某个地方加载它。
我尝试将项目 C 的 PDB 文件包含到项目 A 的输出目录中,但没有成功,从项目 B 到项目 C 的函数调用仍然会被跨步,并且永远不会进入。
注意:
- Just My Code 已禁用
- 项目 C 以两种方式包含在项目 B 中 - 一个“lib”文件(在链接器设置中)和它在源代码中的“.h”文件被引用...我不知道那是不是问题,但你可能会。
我知道必须有办法实现这一点,我有所有可用的源代码,但我不是 C 或 C++ 代码方面的专家,也不是调试它的专家。我尝试将所有项目 C 的文件从 bin 目录包含到项目 A 中,但无法正常工作。
感谢您的帮助或建议!
【问题讨论】: