从Visual Studio Web安装项目中排除文件

3
我在VS中有一个Web Setup项目。我将要转换到WiX,但这是未来的事情,目前我需要解决以下问题。
我需要从项目中排除一些常见的dll文件。所以我构建了项目,VS更新了检测到的依赖项列表。我将它们排除在外,安装程序就可以构建了。我使用Orca检查文件列表,发现这些文件没有包含在安装程序中。
但是当我清理输出目录、重新加载解决方案并进行构建时,有些依赖项不会显示为已排除!因此它们最终会出现在MSI中。(这是在构建机器上发生的事情)。
我认为问题可能出在这些是二级依赖关系: 我的应用程序 -> NHibernate.dll -> Antlr3.Runtime.dll (Antlr dll最终出现在MSI中)。
这是一个bug还是我漏掉了什么?
1个回答

2

我在msdn上找到了这个页面,它提供了一个解决方案,可以避免Exclude标记被重置为False的问题:

之前被排除的文件在重新打开解决方案时又会被包含进来

当您从安装程序项目中排除一个文件时,您可能会发现在关闭并重新打开解决方案后,该文件再次被包含了。如果存在来自两个不同源位置的相同DLL文件,则可能会出现此问题。

为了避免此错误,请更改其中一个文件的复制本地属性:

在解决方案资源管理器中,单击要移除的DLL引用。

在“视图”菜单上,单击“属性窗口”。

将复制本地属性更改为False。


1
MSDN的链接现在已经失效了 :( - user1069816

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接