嗨,我正在尝试将两个 Visual Studio 解决方案文件合并为一个,并且我一直很难将一个项目调用到另一个项目。
- 我有包含项目 A 的解决方案 X,它是一个控制相机的控制台应用程序。
- 我有另一个包含项目 B 的解决方案 Y 为另一个应用程序生成一个 dll 来显示绘图。
在将这两个项目组合在一个解决方案下之后,我将项目 A 设置为项目 B 调用驻留在项目 A 中的函数的静态库。
在 Project BI 上添加了 Project A 的引用,还添加了 Project A 的包含文件的路径。
我可以独立构建项目 A,但我无法构建项目 B。Visual Studio 抱怨如下:
Severity Code Description Project File Line Suppression State
Error LNK1120 1 unresolved externals XOP3
C:\Users\xxx\Documents\project\pvcam_project\XOP3\VC\XOP3-64.xop 1
Severity Code Description Project File Line Suppression State
Warning LNK4098 defaultlib 'LIBCMT' conflicts with use of other libs;
use /NODEFAULTLIB:library XOP3
C:\Users\xxx\Documents\project\pvcam_project\XOP3\VC\LINK 1
Severity Code Description Project File Line Suppression State
Error LNK2019 unresolved external symbol pl_pvcam_get_ver referenced in
function "void __cdecl DoWave(void * *)" (?DoWave@@YAXPEAPEAX@Z) XOP3
C:\Users\xxx\Documents\project\pvcam_project\XOP3\VC\XOP3.obj 1
我以此为例并能够构建 https://msdn.microsoft.com/en-us/library/ms235627(v=vs.90).aspx
我想知道:
- 将项目 A 作为项目 B 访问的静态库是个好主意吗?项目 A 应该是 dll 吗?
- 从解决方案 YI 添加了一个项目 A 并通过以下方式更新了包含文件等的位置(如何合并两个不同的 Visual Studio 解决方案?)这是合并两个解决方案的最简单方法吗?
- 最后,这是最重要的一个,我不知道如何解决编译错误。
非常感谢您查看我的问题。