You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Wix v4编译错误:Package元素包含意外子元素'LaunchCondition'

解决Wix v4中LaunchCondition元素的编译错误

Wix v4对元素结构做了调整,LaunchCondition不再是Package元素的直接子节点,按以下方式修改即可解决问题:

  1. 调整元素的归属与命名空间
    LaunchCondition属于ui命名空间下的元素,需要添加ui:前缀,并且必须放在<UI>元素内部,不能直接嵌套在<Package>里。

  2. 修正后的代码示例
    调整你的Package.wxs文件结构如下:

<Wix xmlns="http://wixtoolset.org/schemas/v4/wxs" 
     xmlns:ui="http://wixtoolset.org/schemas/v4/wxs/ui"
     xmlns:netfx="http://schemas.microsoft.com/wix/NetFxExtension">
    <Package Name="Serviço de Gestão de Ativos" 
             Language="1033" 
             Codepage="1252"
             Version="0.9.0.2" 
             Manufacturer="Grupo Data"  
             UpgradeCode="some-update-guid" 
             InstallerVersion="200">
        
        <PropertyRef Id="NETFRAMEWORK48" />
        <ui:UI>
            <ui:LaunchCondition Condition="NOT NETFRAMEWORK48" Message="!(loc.LanchCondition)" />
        </ui:UI>
(...)
  1. 关于Condition元素的补充说明
    如果尝试使用Condition元素,它在Wix v4中是Package的直接子元素,作用是定义安装阻止条件,同样能在不满足要求时弹出提示并终止安装,语法如下:
<Package ...>
    <PropertyRef Id="NETFRAMEWORK48" />
    <Condition Message="!(loc.LanchCondition)">NETFRAMEWORK48</Condition>
</Package>

你可以根据实际需求选择其中一种实现方式。

内容的提问来源于stack exchange,提问作者Marcio Martins

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.21 22:23:07