Wix 条件错误 - 无法解析条件
Wix Condition Error - Failed to parse condition
我正在尝试使用我从自定义 UI 中设置的变量。我在日志中看到设置值的位置,但我尝试过的所有条件都失败了。
这里是有问题的代码:
<MsiPackage SourceFile="$(var.Recorder.Installer.TargetPath)" InstallCondition="[InstallRecorder]"
Visible="no" EnableFeatureSelection="yes" Name="Recorder.Installer" Id="Recorder.Installer"
/>
我将 [InstallRecorder]
设置为字符串“1”为真,“0”为假。
话虽如此,这就是我尝试过的方法:
[InstallRecorder]=1
[InstallRecorder]='1'
InstallRecorder=1
'InstallRecorder'='1'
如果有人可以告诉我我做错了什么,或者提供一个好的 link 这将非常有帮助。
此外,如果这有帮助,这是我正在查看的确切日志。
[1194:0AC0][2020-08-13T05:39:46]i000: Setting string variable 'InstallRecorder' to value '1'
[1194:0AC0][2020-08-13T05:39:46]i000: Starting Installation
[1194:0F64][2020-08-13T05:39:46]i200: Plan begin, 1 packages, action: Install
[1194:0F64][2020-08-13T05:39:46]e000: Error 0x8007000d: Failed to parse condition "[InstallRecorder]". Unexpected character at position 0.
经过一天的摸索,我终于弄明白我的问题是什么了。
我改变了这个:
<Variable Name="InstallRecorder" Value="0" />
<Variable Name="InstallDataTransport" Value="0"/>
为此:
<Variable Name="InstallRecorder" bal:Overridable="yes" Type="numeric" Value="0" />
<Variable Name="InstallDataTransport" bal:Overridable="yes" Type="numeric" Value="0"/>
然后像这样访问它:
InstallCondition="InstallDataTransport = 1"
我正在尝试使用我从自定义 UI 中设置的变量。我在日志中看到设置值的位置,但我尝试过的所有条件都失败了。
这里是有问题的代码:
<MsiPackage SourceFile="$(var.Recorder.Installer.TargetPath)" InstallCondition="[InstallRecorder]"
Visible="no" EnableFeatureSelection="yes" Name="Recorder.Installer" Id="Recorder.Installer"
/>
我将 [InstallRecorder]
设置为字符串“1”为真,“0”为假。
话虽如此,这就是我尝试过的方法:
[InstallRecorder]=1
[InstallRecorder]='1'
InstallRecorder=1
'InstallRecorder'='1'
如果有人可以告诉我我做错了什么,或者提供一个好的 link 这将非常有帮助。
此外,如果这有帮助,这是我正在查看的确切日志。
[1194:0AC0][2020-08-13T05:39:46]i000: Setting string variable 'InstallRecorder' to value '1'
[1194:0AC0][2020-08-13T05:39:46]i000: Starting Installation
[1194:0F64][2020-08-13T05:39:46]i200: Plan begin, 1 packages, action: Install
[1194:0F64][2020-08-13T05:39:46]e000: Error 0x8007000d: Failed to parse condition "[InstallRecorder]". Unexpected character at position 0.
经过一天的摸索,我终于弄明白我的问题是什么了。
我改变了这个:
<Variable Name="InstallRecorder" Value="0" />
<Variable Name="InstallDataTransport" Value="0"/>
为此:
<Variable Name="InstallRecorder" bal:Overridable="yes" Type="numeric" Value="0" />
<Variable Name="InstallDataTransport" bal:Overridable="yes" Type="numeric" Value="0"/>
然后像这样访问它:
InstallCondition="InstallDataTransport = 1"