无法将属性传递给WiX自定义操作

Bog*_*ets 6 windows-installer custom-action wix properties

我已经阅读了如何将msiexec属性传递给WiX C#自定义操作?,但这没有回答我的问题,或者我只是看不出我做错了什么.我的安装包无法安装,日志说我的属性在自定义操作集合中找不到.我的代码是:

    <CustomAction Id="SetCustomActionDataValue" Return="check" Property="Itp.Configurator.WixCustomAction" Value="G=G2" />
    <CustomAction Id="CreateDatabase" BinaryKey="Binary1" DllEntry="CreateDatabase" Execute="deferred" Return="check" />
    <InstallExecuteSequence>
        <Custom Action='SetCustomActionDataValue'  After="InstallFiles"/>
        <Custom Action='CreateDatabase'  After="SetCustomActionDataValue">
            NOT Installed AND NOT PATCH
        </Custom>
    </InstallExecuteSequence>
Run Code Online (Sandbox Code Playgroud)

自定义操作中的代码是:

string Property1 = session.CustomActionData["G"];
Run Code Online (Sandbox Code Playgroud)

Yan*_*nko 6

第一个元素中的属性名称必须与要将值传递给的延迟自定义操作的名称完全相同.因此,如果延迟操作是CreateDatabase,那么第一个元素应如下所示:

<CustomAction Id="SetCustomActionDataValue" Return="check" Property="CreateDatabase" Value="G=G2" />
Run Code Online (Sandbox Code Playgroud)