Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/wix/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
WiX-静默安装无法执行自定义操作_Wix - Fatal编程技术网

WiX-静默安装无法执行自定义操作

WiX-静默安装无法执行自定义操作,wix,Wix,我们的安装程序(我们称之为“X”)具有FLOWING自定义操作,该操作将在X安装完成后卸载其他一些产品(我们称之为“Y”) CustomAction Id=“RemoveProductY”execomand=“msiexec/quiet/x[PRODUCTCODEOFPRODY]”Directory=“TARGETDIR”Return=“asyncNoWait”Impersonate=“no”Execute=“commit” 当我正常安装它时,它工作得很好,但只有当我安静地安装它时,它才会失败

我们的安装程序(我们称之为“X”)具有FLOWING自定义操作,该操作将在X安装完成后卸载其他一些产品(我们称之为“Y”)

CustomAction Id=“RemoveProductY”execomand=“msiexec/quiet/x[PRODUCTCODEOFPRODY]”Directory=“TARGETDIR”Return=“asyncNoWait”Impersonate=“no”Execute=“commit”

当我正常安装它时,它工作得很好,但只有当我安静地安装它时,它才会失败

作品:msiexec/i X.msi

失败:msiexec/qn/i X.msi


请帮我解决这个问题。

有一种更简单的方法可以在安装过程中卸载其他产品

使用升级表,但在其中指定升级代码而不是产品代码

例如



具有此升级代码和版本的产品您好,谢谢您的回复,但我不想升级我自己的不同版本的产品。我试图卸载的产品完全不同。我知道这个产品的产品代码,我必须卸载它。我也必须有条件地这样做。有什么帮助吗?不管是不是你的。您可以用这种方式卸载许多其他产品。它的升级代码你可以通过Orca找到,例如,我完全同意你。但这里的背景不同。我必须有条件地卸载它,只有当它通过条件时才应该卸载。这就是我尝试使用自定义操作实现它的原因。我认为我不能有条件地升级任何东西。如果我错了,请纠正我。查看日志可以了解有关错误的更多详细信息。msiexec/l*v log.txt/quiet/x[PRODUCTCODEOFPRODY]我尝试过,但没有生成任何日志。这就是为什么我怀疑自定义操作本身是否被触发的原因
<Upgrade Id="{7F034BD8-2C57-437A-B528-F2554A095CF4}">
  <UpgradeVersion Property="X_PRODUCT_INSTALLED" Maximum="2.0.0" IncludeMaximum="yes" />
</Upgrade>