Visual studio 在VS安装项目中,如何从MSI中排除项目的依赖项?

Visual studio 在VS安装项目中,如何从MSI中排除项目的依赖项?,visual-studio,installation,ilmerge,Visual Studio,Installation,Ilmerge,我在C#工作。我有一个包含4个项目的小型VS解决方案: 动态链接库 引用DLL的EXE 合并项目,只对前两个步骤中的程序集执行ILMerge 一个安装项目,用于打包合并项目的.EXE输出。(我已将“项目的主要输出”添加到设置中,并在此处指定合并项目) 问题是,安装项目会自动将项目1和项目2检测为项目3的依赖项。当我将第三个项目的主要输出包括到MSI(安装项目)中时,依赖项也会自动拖入。我不要这个 我怎样才能阻止它 我尝试指定一个“排除过滤器”,但无法使其工作。不管我怎么做,依赖性总是被拖进来

我在C#工作。我有一个包含4个项目的小型VS解决方案:

  • 动态链接库
  • 引用DLL的EXE
  • 合并项目,只对前两个步骤中的程序集执行ILMerge
  • 一个安装项目,用于打包合并项目的.EXE输出。(我已将“项目的主要输出”添加到设置中,并在此处指定合并项目)
  • 问题是,安装项目会自动将项目1和项目2检测为项目3的依赖项。当我将第三个项目的主要输出包括到MSI(安装项目)中时,依赖项也会自动拖入。我不要这个

    我怎样才能阻止它

    我尝试指定一个“排除过滤器”,但无法使其工作。不管我怎么做,依赖性总是被拖进来

    我试图手动修改Setup.vdproj以删除自动检测到的依赖项项目,但当我在VS中重新加载.vdproj时,自动检测到的依赖项又回来了


    帮助?

    我讨厌这种情况。我问这个问题三分钟后就想出来了

    您只需右键单击检测到的依赖项,然后在“属性”窗口中指定“排除=True”


    太棒了,这对我来说很管用。只要小心,如果您的一个项目或子项目获得了一个新的项目引用,那么该依赖性将出现在安装项目中。您必须意识到这一点,并像以前那样排除依赖关系。

    但它可以完全删除吗?在切换生成配置时,某些依赖关系保持自启用状态:(