2

我的 PC 上同时安装了 Visual Studio 2010 和 2012。事实证明,当属性页 Microsoft.Cpp.Win32.user 在 Visual Studio 2010 中更改时,相同的更改会传播到 Visual Studio 2012。它的工作方式相反 - 从 VS 2012 的更改传播到 VS 2010。这使得它变得困难当不同版本的 VS 的二进制文件命名相同时使用第 3 方库,因为 VS 2010 和 2012 都将在同一个文件夹中搜索 lib 文件。

4

1 回答 1

2

您可以(并且 imo 应该)创建一个或多个项目特定的属性页,而不是更改 Microsoft.Cpp.Win32.user 属性页,其中包含第三方库信息。这有几个含义:

优点:

  1. 它解决了您的问题,因为您可以为 VS10 和 VS11 项目使用不同的属性页
  2. 如果项目特定的属性页面位于项目中而不是在某个一般位置,则可以更轻松地将项目分发给其他 VS 环境和其他开发人员。
  3. 只有需要 lib X 的项目才使用 lib X,而每个项目都使用您拥有的每个第三方 lib。
  4. 您可以在一个项目中升级第三方库,而不必担心升级会破坏使用相同库的其他项目。

缺点:

  1. 您必须为每个使用第三方库的新项目创建或复制和调整属性页。如果你每隔几天就有一个新项目,那可能是一个可衡量的工作量。考虑制作一个具有非常通用属性页面的模板项目,并为每个新的迷你项目复制它。

在我的项目中,我在同一个解决方案中为每个项目使用不同的属性页集,例如用于链接到单元测试框架的单元测试项目等等。

于 2013-07-04T07:32:10.037 回答