Wix:不允许安装组件:因为存在具有更高版本密钥文件的相同组件 [英] Wix:Disallowing installation of component: since the same component with higher versioned keyfile exists

查看:23
本文介绍了Wix:不允许安装组件:因为存在具有更高版本密钥文件的相同组件的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

在部署到生产环境之前,我正在 OPS 环境中对 MSI 进行兼容性检查.

I am doing a compatibility check of MSI in the OPS environment before deploying to Production environment.

其中一部分我首先部署最新的 MSI 说MSIv2 到 MSIv1 之上的 OPS 环境,而 MSIv2 会自动卸载 MSIv1 并安装 MSIv2,没有任何问题.

A part of this i am deploying first the latest MSI say "MSIv2 to OPS environment on top of MSIv1 and the MSIv2 automatically uninstall the MSIv1 and install MSIv2 without any issues.

现在,当我在 MSIv2 之上安装 MSIv1 时.MSIv1 已安装,并在控制面板中显示为已安装.但是当我看到目录路径时,bin 文件夹中没有 .dll 文件.

Now when i am installing MSIv1 on top of MSIv2. MSIv1 is installed and it is showing in control pannel as installed.But when i see the directory path no .dll files are there in the bin folder.

我正在日志文件中记录 MSI 的操作,它告诉...日志:不允许安装组件:{AC7BC9EB-4F1D-4FEE-B0C2-478966229D8E},因为存在具有更高版本密钥文件的相同组件

i am logging the action of MSI in log file which tell ... Log: Disallowing installation of component: {AC7BC9EB-4F1D-4FEE-B0C2-478966229D8E} since the same component with higher versioned keyfile exists

推荐答案

wix 中的产品代码为*".MSI 从其中一个 exe 获取版本,该版本作为 msi 的一部分进行部署.exe 是在安装 MSI 时安装服务.exe 是版本化的,因此 MSI 将具有相同的版本.所以当安装了较低版本的MSI时,exe也会有相同的版本,因此exe会与服务器中已有的exe进行比较,并决定不安装为已有的较高版本.

The product code is "*" in wix. MSI get the version from one of the exe, which is deployed as part of msi. The exe is install the service when MSI is installed.exe is versionsed so MSI will have the same version. So when the lower version of MSI is installed the exe will also have the same version, hence exe compares with exe which is already there in the server and it decides not to install as the higher version already there.

所以我所做的是RemoveExistingproduct" before="costing "

So what I did is "RemoveExistingproduct" before="costing "

解决了在更高版本之前删除产品的问题.

Which resolved the issue removing the product before the higher version.

让我知道是否还有其他替代方案,它是否是正确的做法以及后果是什么.

Let me know if any other alternative is there and is it a right practice and what are the consequences.

这篇关于Wix:不允许安装组件:因为存在具有更高版本密钥文件的相同组件的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆