我有一个更新的第三方DLL必须安装到我的客户计算机上。我们目前使用在Visual Studio 2010中创建的MSI自动安装程序。不幸的是,第三方DLL版本不正确,提供者只增加了程序集版本而没有增加文件版本。由于第三方提供者是Microsoft,等待他们修复问题并不现实。我们需要立即获取新的DLL并在一个MSI更新中发送给用户。目前,MSI更新无法覆盖DLL。在VS2010设置项目中是否有一种方法可以强制覆盖一个DLL,即使文件版本匹配?
如果您愿意进行msi后构建调整,可以访问文件表并进行“版本欺骗”。另一个想法是不将该DLL放入安装程序中。查找来自Microsoft的安装程序(如果存在),可以将其放入引导程序中,或创建自己的安装程序,并使用AMUS而不是OMUS进行版本规则。
你不能只将文件作为“文件”添加到安装程序中,并与其他文件一起安装吗?不要将其设置为项目输出或任何预设的安装操作。转到文件部分,右键单击“应用程序文件”文件夹,然后选择“添加文件”。导航到所需文件并选择它。