wix - wix SetProperty After属性不会采取自定义操作ID

标签 wix custom-action

在阅读了SetProperty上的页面并查看了我在此处和其他地方可以找到的尽可能多的示例之后,我仍然无法将SetProperty设置为自定义操作ID的After或Before来使用。该文档看起来很简单,而且很简单(哈!),但是我得到的是“找到一个不存在的After Action:MyWonderfulCA的ActionRow”,而不是幸福(这实际上是我想要的:)我的代码的外观表示形式:

    <CustomAction Id="MyWonderfulCA" BinaryKey="MyWonderful.dll" DllEntry="MyWonderfulCA" Execute="immediate" />

    <InstallExecuteSequence>
        <Custom Action="MyWonderfulCA" After="LaunchConditions" />
    </InstallExecuteSequence>

    <Property Id="SOMEPROPERTY" />
    <SetProperty Id="SOMEPROPERTY" After="MyWonderfulCA" Value="[SOMEOTHERPROPERTY]the\yellow\brick\road">WEAREHUNKYDORY</SetProperty>

所以无论如何,请救我SOF wix专家,您是我唯一的希望...

最佳答案

我不确定,但以下内容看起来可疑。
<SetProperty>(link)元素具有 Sequence 属性,该属性是可选的。如果您不指定它(例如在您发布的示例中),它将获取both的值,这意味着custom action of type 51(即SetProperty转换为)被调度为InstallUISequenceInstallExecuteSequence

但是,据我所知,您仅将MyWonderfulCA安排在InstallExecuteSequence中。因此,让我认为,当WiX尝试将SetProperty安排到InstallUISequence中时,它找不到After属性中指定的自定义操作,并且失败。

通过显式指定Sequence='execute'或通过将精彩的CA安排到两个序列中来进行检查。如果是这样,则只需从这两种方法中选择最合适的方法即可。

关于wix - wix SetProperty After属性不会采取自定义操作ID,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17181719/

相关文章:

xml - 如何使用 XMLFile 设置值?

visual-studio-2010 - 使用解决方案的配置名称作为MSBuild Target的测试条件

visual-studio - WiX 不嵌入二进制文件

windows-installer - 将命令行参数从 installshield 安装程序传递到自定义操作 exe

Wix ExePackage 并行安装而不卸载

wix - 为 WiX Burn 捆绑多个支持文件

c++ - CPP DLL CustomAction 代码在安装期间未执行

c# - 用于删除站点操作菜单项的 Sharepoint 自定义操作

维克斯。取消安装时回滚自定义操作

database - VisualStudio 安装项目 : Deploy a Project with Database through a CustomAction BadImageFormatException