WIX-安装时的自定义操作,但不包括卸载或升级时的自定义操作

WIX-安装时的自定义操作,但不包括卸载或升级时的自定义操作,wix,Wix,我有一个wix安装程序,其中有几个自定义操作正在运行,如注册等。但是,我们只希望这些操作在安装时运行,而不是在升级或卸载时运行 我试着将其设置为“未安装”并重新安装,但这也不起作用 如果只想在安装时通过自定义操作运行某些应用程序,而不是在升级或卸载时,有人知道正确的属性是什么吗 <InstallExecuteSequence> <Custom Action="PosConfig.CustomAction" Before="StartServices"><

我有一个wix安装程序,其中有几个自定义操作正在运行,如注册等。但是,我们只希望这些操作在安装时运行,而不是在升级或卸载时运行

我试着将其设置为“未安装”并重新安装,但这也不起作用

如果只想在安装时通过自定义操作运行某些应用程序,而不是在升级或卸载时,有人知道正确的属性是什么吗

 <InstallExecuteSequence>
     <Custom Action="PosConfig.CustomAction" Before="StartServices"><![CDATA[NOT Installed AND NOT UPGRADINGPRODUCTCODE AND UILevel>3]]></Custom>
     <Custom Action="Register.CustomAction" After="PosConfig.CustomAction">NOT Installed AND NOT UPGRADINGPRODUCTCODE </Custom>
     <Custom Action="OPOSSelectorFirst.CustomAction" After="Register.CustomAction"><![CDATA[NOT Installed AND NOT UPGRADINGPRODUCTCODE AND &ProductFeature=3 AND Not OPOSDLLINSTALLED]]></Custom>
     <Custom Action="OPOSSelectorUpdate.CustomAction" After="OPOSSelectorFirst.CustomAction"><![CDATA[NOT Installed AND NOT UPGRADINGPRODUCTCODE AND &ProductFeature=3 AND Not OPOSDLLINSTALLED]]></Custom>
  </InstallExecuteSequence>

3]]>
未安装且未升级ProductCode

编辑:添加了我的自定义操作序列。

未安装和重新安装
不能同时为真。这意味着应用程序尚未安装,但当前正在重新安装。那怎么办

改为使用此条件计划自定义操作:

未安装且未升级ProductCode


这可以防止在主要升级时触发它。

升级产品代码是在RemoveExistingProducts操作期间设置的。根据您的
主要升级计划,可能已经太晚了。我找到的解决方案是
未安装且未检测到WIX\u升级

未安装
(我假设您编写的代码中没有拼写错误)。请显示您的
InstallExecuteSequence
您实际计划自定义操作的位置。添加了代码示例,我们通常将其设置为“未安装”,但这似乎不起作用,因为它在升级时仍运行自定义操作。您是否有日志文件来分析条件的值以使其工作?我刚刚尝试了此解决方案,但是,在从一个版本升级到另一个版本的过程中,它仍然显示应用程序。@Lex:调用哪个CA<“代码>注册。自定义操作”
?我在所有这些工具上都试过了,因为我们真的不想在升级时看到它们,但是它们中的每一个都出现了。@Lex:这一直是Windows Installer的问题。”。根据您的
升级
部分,您可以使用此处设置的属性,但前提是
OnlyDetect
设置为yes,否则也不起作用。您可以尝试不安装、不升级ProductCode和不重新安装。据我所知,虽然在主要升级期间未设置“重新安装”,但您可以尝试。属性区分大小写。使用已安装的,而不是已安装的。