我们有合并模块,当某个条件变量为真时将安装 PDB 文件,但是我们需要设置此条件。
我可以在 WiX 安装程序中设置此条件并以某种方式将其传递给合并模块吗?
我们有合并模块,当某个条件变量为真时将安装 PDB 文件,但是我们需要设置此条件。
我可以在 WiX 安装程序中设置此条件并以某种方式将其传递给合并模块吗?
您可以使用以下格式在合并模块中设置安装程序属性:
<property_name>.<module_GUID>
例如:
CONDITION_PROPERTY.32D73316_E513_43C3_99F5_381A4B5F0A78
在您的安装程序中,您可以尝试使用自定义操作来设置合并模块条件中使用的属性。
自定义操作元素可能如下所示:
<CustomAction Id="SetMsmProperty" Return="check" Property="CONDITION_PROPERTY.32D73316_E513_43C3_99F5_381A4B5F0A78" Value="myValue" />
您可以在 InstallExecuteSequence -> AppSearch 之后安排操作,因此您可以添加此 InstallExecuteSequence 元素:
<InstallExecuteSequence>
<Custom Action="SetMsmProperty" After="AppSearch">NOT Installed</Custom>
</InstallExecuteSequence>
您可以在此处阅读有关 wix 自定义操作的更多信息:
我通常只是创建一个子功能来在安装程序中创建一个变化点。然后,您可以对其设置功能条件,以控制是否安装合并模块引入的组件。这比在每个组件上设置条件要简单得多,并且让您更灵活地决定是否要向最终用户显示“调试符号”功能。