在Visual C+中设置项目/解决方案+;集成电路设备 我正在寻找如何在VisualC++环境下正确设置(以及相当优雅和不太好)多C/C++项目解决方案的建议或参考。例如,我关心绝对搜索路径,我更喜欢使用相对路径和/或使用适当的变量a la$(soandso)使解决方案/项目工作,而不考虑它在文件系统中的确切存储位置。但我不知道如何才能做到这一点

在Visual C+中设置项目/解决方案+;集成电路设备 我正在寻找如何在VisualC++环境下正确设置(以及相当优雅和不太好)多C/C++项目解决方案的建议或参考。例如,我关心绝对搜索路径,我更喜欢使用相对路径和/或使用适当的变量a la$(soandso)使解决方案/项目工作,而不考虑它在文件系统中的确切存储位置。但我不知道如何才能做到这一点,c++,visual-studio,visual-c++,C++,Visual Studio,Visual C++,我目前正在处理的解决方案包含两个项目。一个DLL项目和另一个使用DLL的命令行应用程序项目。我想知道我应该如何设置所有路径和链接——不仅仅是为了让它为我工作,而是为了让它为所有将我的解决方案文件夹复制到另一个硬盘驱动器上的其他人工作(等等)。您要找的是Visual Studio在默认情况下实际做的事情。所有输出目录都与您的解决方案相关: 输出目录:$(SolutionDir)$(平台)\$(配置)\ 中间目录:$(平台)\$(配置)\ 目标名称:$(项目名称) 或者,您可以将这些目录放在源代

我目前正在处理的解决方案包含两个项目。一个DLL项目和另一个使用DLL的命令行应用程序项目。我想知道我应该如何设置所有路径和链接——不仅仅是为了让它为我工作,而是为了让它为所有将我的解决方案文件夹复制到另一个硬盘驱动器上的其他人工作(等等)。

您要找的是Visual Studio在默认情况下实际做的事情。所有输出目录都与您的解决方案相关:

  • 输出目录:
    $(SolutionDir)$(平台)\$(配置)\
  • 中间目录:
    $(平台)\$(配置)\
  • 目标名称:
    $(项目名称)
或者,您可以将这些目录放在源代码树之外,以避免污染您的工作副本(我在这里使用SVN术语)。可以通过使用相对路径说明符和宏(如
。\$(SolutionDir)


回答你的问题有点困难,如果你能更具体地说明你想要达到的目标,那么我可以给你一个更好的答案。

正如@Nikola所提到的,它已经在VS中实现了!我能告诉您的最好方法是,如果您想在同一个解决方案中实现这两个项目:

1) 使用DLL或客户端解决方案创建原始解决方案
2) 右键单击解决方案管理器->添加->新建/现有项目中的解决方案(而不是项目)
3) 添加/创建其他项目

至于如何在客户端代码中添加对DLL的引用,VS也会这样做。以下是为此采取的步骤:

1) 右键单击客户端项目
2) 参考文献
3) “添加新引用”-这将列出解决方案中的项目…单击DLL项目
4) “好的”


这将通过相对路径自动引用DLL,由于它们打包在同一个解决方案中,因此任何打开/使用该解决方案的人(或者如果使用发布版本安装代码的人)也将引用DLL。

您的具体问题是什么?因为它通常对我有效,而不需要任何黑客解决方案。(旁注:使用版本控制,而不是“复制到另一个硬盘驱动器”)