繁体   English   中英

如何从延迟的CustomAction(c ++ dll)设置WiX属性

[英]How to set WiX property from deferred CustomAction (c++ dll)

我有一个WiX安装程序,它在c ++ dll中运行extern函数作为自定义操作( Execute="deferred" )。 我通过设置属性将所需的属性值传递给它,该属性与CustomAction的ID( 下面 的示例中的 custActID非常相似

<CustomAction Id="SetOutputProperty" Property="custActID"
          Value="ONE=[ONE];TWO=[TWO];THREE=[THREE];" />
<CustomAction Id="custActID"
          BinaryKey="BIN_MY_DLL"
          DllEntry="dllEntryFunction"
          Impersonate="no"
          Execute="deferred"
          Return="check" 
          HideTarget='yes' />

然后我可以使用以下命令获取c ++ dll中的所有数据:

 MsiGetProperty(hInstall, "CustomActionData")

我的问题是否有可能从这个dll中设置WIX中的一些属性

所以:我有一个ptoperty,在Wix中说THREE 我将它传递给dll。 Dll将从用户那里获得一些数据(如果它们是正确的,以某种特殊的方式验证它们),最后更新这个rproperty THREE 我想把它传递给WIX。

不,延迟的自定义操作无法设置属性。 运行延迟自定义操作时,已设置自定义操作数据,因此自定义操作不会影响传递给以后自定义操作的数据。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM