2012-09-25 67 views
-1

假设我们有msi x.msi,它正在安装一个xap文件。是否可以覆盖由其他msi安装的xap文件?

我们想通过另一个msi覆盖xap文件(例如使用y.msi)。

是否可以通过其他msi覆盖?它会有任何问题,因为它不会有任何关联的版本号?

如果可能会发生什么,如果我们卸载x.msi?

是否建议覆盖由其他msi安装的文件?

回答

2

即使是应用程序二进制文件,XAP文件也没有版本资源,因此Windows安装程序无法正确版本。因此,你可能会进入DLL地狱,因为最后一个包会被安装。

为了缓解这种情况,可以考虑使用版本构建一个无意义的DLL,并将其用作组件的密钥文件。这样MSI将评估基于DLL版本的安装。这应该可以防止XAP的版本冲突。

确保两个MSI具有相同的组件标识并且组件标记为共享。这将适应正确的引用,以便上次卸载将删除该组件。

相关问题