如何强制VS 2008部署项目在两个不同的位置安装同一文件的两个不同版本?

时间:2010-07-02 16:49:44

标签: visual-studio-2008 deployment assemblies mismatch

一些背景: 我有一个VS 2008部署项目我没有使用项目输出,我正在直接添加程序集文件,因为我们在构建它们之后会在程序集上运行第三方许可和混淆工具。此部署项目中还包含一个包含示例的帮助目录。

其中一个示例是一个C#项目,它引用了主程序中的一些程序集。我们在此示例项目中包含bin \ Release文件夹,以便最终用户可以轻松运行该示例,而无需通过调试器或任何操作来运行示例。这可能包含旧版本的主项目程序集,因为这取决于上次构建Example项目的时间。

问题: 示例项目引用的主项目程序集包含在示例的bin \ Release文件夹中,具有相同名称但版本不同的程序集位于部署项目的Application Directory中。似乎VS 2008试图通过识别这些文件具有相同的名称来最小化空间,因此它存储了一个副本。但是,它使用示例中的文件而不是主项目中的文件。有没有办法告诉VS每次使用指定的文件,即使可能有另一个同名的文件?

1 个答案:

答案 0 :(得分:0)

因此,当您将程序集添加到部署项目时,VS会自动添加其依赖项。但是,重建这些依赖项时永远不会更新(它将始终使用与第一次添加需要这些依赖项的程序集时相同的版本)。

我必须排除依赖项(因为VS不会让你删除它们)并手动添加这些相同的文件。现在,每次我进行构建时,都会获得这些文件的最新版本。