Wix自定义操作与WixUI_Minimal
问题描述:
所以,我想在应用程序完成安装后(尽管事实上,当辅助应用程序运行真的无所谓,因为它不会与安装的文件进行交互安装),运行与应用程序捆绑在一起的另一个程序。相关代码(与更换不同的东西“...”:Wix自定义操作与WixUI_Minimal
<directory ...>
<component ...>
<File Id="IDINST" ... />
</component>
</directory>
...
<CustomAction Id="IDACTION" FileKey="IDINST" ExeCommand="..." Return="ignore" />
...
<InstallExecuteSequence>
<Custom Action="IDACTION" After="CostFinalize" />
</InstallExecuteSequence>
我检查目录和文件是在我预料,但安装过程后,没有执行事实上我真的不知道。即使想要安装该文件,只是运行,然后删除。但我现在会忽略这个。不管怎么说,我已经看到几个对话后触发动作的例子,但因为我目前使用<UIRef Id="WixUI_Minimal" />
我不认为这是
答
CostFinalize在InstallFiles延迟操作运行之前发生(实际上是放置该文件)。因此,CustomAction无法正常工作(因为文件不可用)(因为Return被忽略)
您需要您的CustomAction至少在InstallFiles之后计划并被延期,或者如果CustomAction不能延迟运行,那么它必须在InstallFinalize之后(当然,它不会在InstallFinalize之后导致回滚)。