【问题标题】:Wix Custom Actions with WixUI_Minimal使用 WixUI_Minimal 的 Wix 自定义操作
【发布时间】:2008-11-19 16:48:30
【问题描述】:

所以,我正在尝试,在应用程序完成安装后(尽管实际上,运行辅助应用程序并不重要,因为它在安装过程中不会与已安装的文件交互),运行另一个与应用程序捆绑在一起的程序。相关代码(用“...”代替各种东西:

<directory ...>
  <component ...>
  <File Id="IDINST" ... />
  </component>
</directory>
...
<CustomAction Id="IDACTION" FileKey="IDINST" ExeCommand="..." Return="ignore" />
...
<InstallExecuteSequence>
  <Custom Action="IDACTION" After="CostFinalize" />
</InstallExecuteSequence>

我检查了目录,文件在我预期的位置,但在安装过程后没有执行。事实上,我什至不想安装该文件,只需运行然后删除即可。但我暂时忽略它。无论如何,我已经看到了几个在对话后触发操作的示例,但由于我目前使用的是&lt;UIRef Id="WixUI_Minimal" /&gt;,所以我认为这并不理想。

【问题讨论】:

    标签: installation wix windows-installer custom-action


    【解决方案1】:

    CostFinalize 发生在 InstallFiles 延迟操作运行(实际放置文件)之前很久。因此,CustomAction 以静默方式失败(因为文件不可用)(因为 Return 被忽略)

    您需要至少在 InstallFiles 之后安排您的 CustomAction 并延迟,或者如果 CustomAction 不能延迟运行,那么它必须在 InstallFinalize 之后(当然,它不会在 InstallFinalize 之后导致回滚)。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多