将两个VS2010 C++项目构建到同一输出文件夹中

Build two VS2010 C++ projects into the same output folder

本文关键字:构建 输出 文件夹 项目 C++ VS2010 两个      更新时间:2023-10-16

我在同一个VS 2010解决方案中有两个项目。它们重用相同的代码,我希望VS2010将两个项目的可执行文件构建到相同的输出文件夹中。

显然,这并非小事http://msdn.microsoft.com/en-us/library/ms165411.aspx说是的。

一个构建过程删除了以前构建的一个(或者甚至不将第一个构建可执行文件复制到文件夹中),所以我只从最后构建的项目中有一个可执行文件。

如果单独构建,则分别编译和输出各自的可执行文件。一个项目依赖于另一个项目(以解决对重用OBJ文件的访问冲突,因为一个项目可能在另一个尝试构建时持有句柄的时间过长)。

这是个谜,如果能给我一点帮助,我将不胜感激。

您可以通过转到项目属性页,然后将两个文件夹的输出目录字段更改到同一位置(绝对位置或相对位置),将visual studio重定向到所需的任何文件夹。这两个项目不能有相同的名称(实际上,可执行文件的名称必须不同,因为可能会生成其他一些辅助文件),否则生成一个项目会删除另一个项目。

上面我回答了你的问题,但我认为你是从错误的角度出发的。如果您有通用代码,请创建一个库项目/文件夹。将它放在某个地方,并将源代码本身添加到每个项目中,这样每个项目都可以使用它,或者您可以实际生成带有包含lib文件中函数原型的头的lib文件本身,然后在每个项目中使用头文件和lib文件。使用Visual Studio的"VC++目录"选项卡指向lib文件夹和头文件。

这通常是正确的方法,可以避免麻烦(如果你不小心更改了一个项目中的源代码,并影响了另一个项目。使用lib文件,你必须做出更深思熟虑的更改)。

另一个好处是,您不必每次都重新编译它,即使您清理了它(如果您清理并使用源代码,您总是会重新编译)。