首页 > 解决方案 > 覆盖 CustomActionData WIX 中的值

问题描述

我将数据发送到自定义操作

<Property Id="MESSAGE" Value="null"/>
<CustomAction Id="TurnOffServicesEvent" BinaryKey="PathCustomAction" DllEntry="TurnOffServices" Return="check" Execute="deferred" Impersonate="no"/>
<CustomAction Id="SendPropertyOff" Property="TurnOffServicesEvent" Value="MESSAGE=[MESSAGE]" />

在 TurnOffServices

session.CustomActionData["MESSAGE"] = "WARN";

当我再次提到这个财产时,但在

<CustomAction Id="TestAction" BinaryKey="PathCustomAction" DllEntry="Test" Return="check" Execute="immediate"/>

在自定义操作中:

session["MESSAGE"] == "null"

在我看来,我没有参考属性 MESSAGE,这就是它发生的原因。但我不知道如何做到这一点。

标签: wix

解决方案


我找到了不可能的信息。https://docs.microsoft.com/pl-pl/windows/win32/msi/obtaining-context-information-for-deferred-execution-custom-actions?redirectedfrom=MSDN

我解决了将信息写入 .txt 并在下一步操作中读取它的问题。


推荐阅读