从包中执行wix包在升级期间输出“错误1316:指定的帐户已存在”. Windows安装程序如何输出此错误代码?我担心没有太多关于它的文件.
我们之前发布了一个由单个msi软件包组成的产品,现在我们正在准备升级,其中包含一个包含此msi软件包新版本的wix软件包.原始msi软件包和更新之间的产品代码和文件名未更改.
编辑:msi包现在不支持升级.当用户需要升级时(无论是主要升级,次要升级还是小更新),他必须先手动卸载以前的包…
编辑2:我刚刚删除了对util扩展的引用进行编译,安装程序似乎工作正常……我仍然需要对它进行全面测试.
升级MSI要求MSI具有新的ProductCode,递增的ProductVersion(在前3个字段中)和相同的UpgradeCode.所以我不清楚你实际上是在升级,这取决于Burn部分认为你在做什么.它无法进行升级,因为您具有相同的ProductCode. (您需要在MSI中使用MajorUpgrade元素才能进行适当的升级).因此,对于您是否正在进行实际的全面升级存在疑问.如果您的目的是使用完全升级替换已安装的MSI,并使用更高版本的产品,则使用MajorUpgrade.
原文链接:https://www.f2er.com/windows/371781.html因此,Burn可能决定通过重新安装MSI文件来进行就地更新(这更像是补丁而不是更新),这是相关的,因为您没有说明您是否有任何自定义操作或WiX util函数(它们仍然是自定义操作),用于创建用户帐户.如果你这样做,那么你错误的最可能原因是Burn通过重新安装MSI文件重新安装了你的新MSI作为更新,并且一些自定义操作再次运行,是的,那个用户仍然在那里,因为还没有实际卸载会删除它.或者MSI的ProductVersion是相同的,并且您获得了维护模式修复,因此自定义操作将再次运行.
我会得到一份详细的升级日志,看看究竟发生了什么.
这里有很多猜测,因为你说你想升级,但你的MSI并不是为了实际升级而构建的,你也没有说你是否有WiX util用户来创建用户帐户.您也没有说您是否增加了新MSI的ProductVersion,因此再次导致更多关于Burn可能做的猜测.详细日志将显示它是自定义操作问题还是其他内容,您正在执行哪种更新(如果有).