Visual studio 2008 已排除的安装项目重复检测到的依赖项将再次包括在内

Visual studio 2008 已排除的安装项目重复检测到的依赖项将再次包括在内,visual-studio-2008,dependencies,setup-project,Visual Studio 2008,Dependencies,Setup Project,我们在使用Visual Studio 2008时遇到以下问题:即使在将重复检测到的依赖项的排除设置设置设置为true后保存安装项目,一旦重新加载项目,排除设置也会更改回false 因此,您必须再次排除检测到的依赖项以获得所需的输出。我们有一个由120多个相互依赖的项目组成的庞大解决方案,其中包含大量的dll依赖项,因此更改回这些值是一件痛苦的事情 我只是简化了下面的场景(轻描淡写)来说明: 项目: 项目A-参考DLL1、DLL2、DLL3 项目B-参考DLL3、DLL4、项目A 项目C-参考D

我们在使用Visual Studio 2008时遇到以下问题:即使在将重复检测到的依赖项的排除设置设置设置为true后保存安装项目,一旦重新加载项目,排除设置也会更改回false

因此,您必须再次排除检测到的依赖项以获得所需的输出。我们有一个由120多个相互依赖的项目组成的庞大解决方案,其中包含大量的dll依赖项,因此更改回这些值是一件痛苦的事情

我只是简化了下面的场景(轻描淡写)来说明:

项目:

  • 项目A-参考DLL1、DLL2、DLL3
  • 项目B-参考DLL3、DLL4、项目A
  • 项目C-参考DLL2、DLL3、DLL4
  • 项目1(设置项目)

    • PROJECTA的主要输出(手动添加)
    • PROJECTB的主要输出(手动添加)
    • (检测到的依赖项由VS自动添加)
      • PROJECTA(设置Exclude=True,重新加载后值保持不变)
      • DLL1(设置Exclude=True,值在重新加载后保持不变)
      • DLL2(设置Exclude=True,值在重新加载后变回False)
      • DLL2(设置Exclude=True,值在重新加载后变回False)
      • DLL3(无更改,希望包括)
      • DLL3(设置Exclude=True,重新加载后值变回False)
      • DLL3(设置Exclude=True,重新加载后值变回False)
      • DLL4(设置Exclude=True,重新加载后值变回False)
      • DLL4(设置Exclude=True,重新加载后值变回False)
输出(对于PROJECT1.msi):

  • 期望输出:

    • PROJECTA.dll
    • PROJECTB.dll
    • DLL3
  • VS将排除设置更改回False时的输出:

    • PROJECTA.dll
    • PROJECTB.dll
    • DLL2
    • DLL3
    • DLL4
这将导致运行时出现问题(加上安装程序臃肿)

我浏览了网页,还没有找到一个可行的解决方案。其中一些问题在过去已经被问过了,所以我想知道是否已经有了一个补丁,或者有人有了一个新的解决方法来帮助我们


除了使用WIX并将所有依赖项的“复制本地”设置值设置为false之外,是否有人有办法使Visual Studio保留“排除”设置值?

我也有同样的问题,您找到解决方案了吗?