C++ 从同一解决方案导入MS Visual Studio中的库

C++ 从同一解决方案导入MS Visual Studio中的库,c++,visual-studio,dependencies,solution,C++,Visual Studio,Dependencies,Solution,我这里有我的解决方案文件,它包含4个项目 项目A是一个被编译成.lib的库 项目B是一个变成.exe的程序 我已经将项目A设置为项目B的依赖项,并且包括 #pragma comment(lib,"terrain.lib") 到使用库的项目B中的文件中 尽管两个项目都被编译到同一个调试/发布文件夹中,MSVCC告诉我 1>LINK : fatal error LNK1104: File "terrain.lib" could not be opened. // <freely t

我这里有我的解决方案文件,它包含4个项目

  • 项目A是一个被编译成.lib的库
  • 项目B是一个变成.exe的程序
我已经将项目A设置为项目B的依赖项,并且包括

#pragma comment(lib,"terrain.lib")
到使用库的项目B中的文件中

尽管两个项目都被编译到同一个调试/发布文件夹中,MSVCC告诉我

1>LINK : fatal error LNK1104: File "terrain.lib" could not be opened.
// <freely translated from German, could mean "not found">
工作,但我必须改变它的发布


使用#ifdef?

是唯一有效的方法。对于调试和发布配置,您需要在项目设置中指定库路径(“链接器设置中的附加库目录-至少在vc2008中”)。您可以使用像${ConfigurationName}和${SolutionDir}这样的宏,所以在项目中指定路径应该很容易


另外,使用链接器设置而不是
#pragma comment

包含库可能是一个更好的主意,谢谢,现在可以使用的设置。我仍然感到困惑的是,我必须将路径添加到库中,因为它被设置为一个必需的项目。。。
#pragma comment(lib,"../Debug/terrain.lib")