gpt4 book ai didi

wix - 为什么Major upgrade(迁移)后有两个快捷方式?

转载 作者:行者123 更新时间:2023-12-04 18:10:47 26 4
gpt4 key购买 nike

我们正在使用 WiX 进行 Windows 安装。

直到最近,我们才支持重大升级,没有任何问题。

当我们更改产品名称时,我被要求更改快捷方式名称。所以我改变了它。

重大升级后,将显示 2 个快捷方式,而不是一个。

美妙的是,当我们在同一台机器上安装所有迁移的功能时,它似乎正确地删除了旧的快捷方式。

但是当我们在 (webserver) 机器上安装其中一项功能 (webserver feature) 时,会出现 2 个快捷方式。

我验证了快捷方式组件也已添加到网络服务器功能中。

 <DirectoryRef Id="ProgramMenu.OrganizationName.MyProj">
<Component Id="CoreInterface_Shortcuts" Guid="3e3c3733-9b53-42cf-a641-b5b3e3da88cf">
<Shortcut Id="MyOrgMESUrl" Name="Home" Description="MyOrg Intuition URL" Target="[INSTALLDIR]MyOrg MES.url" WorkingDirectory="INSTALLDIR"/>
<RemoveFolder Id="RemProgramMenu.MyOrg" Directory="ProgramMenu.MyOrg" On="uninstall"/>
<RemoveFolder Id="RemProgramMenu.MyOrg.MyProj" Directory="ProgramMenu.MyOrg.MyProj" On="uninstall"/>
<RegistryValue Root="HKCU" Key="Software\MyOrg\MyProj" Name="installed" Type="integer" Value="1" KeyPath="yes"/>
</Component>
</DirectoryRef>

<Feature Id="WEBSERVER" Title="WEBSERVER Customized Component(s)" Level="1">
<ComponentRef Id="CoreInterface_Shortcuts"/>
</Feature>

为什么它保留旧的快捷方式(如果单击旧的快捷方式它不起作用)?如何避免这种情况?

最佳答案

原因很简单。
您没有遵循最佳实践。
当您更改名称时,您必须更改组件 guid。
见文档:

Any change that has not been shown by testing to be compatible with previous versions of the component. In this case, you must also change the name or target location of every resource in the component.

A change in the name or target location of any file, registry key, shortcut, or other resource in the component. In this case, you must also change the name or target location of every resource in the component.

The addition or removal of any file, registry key, shortcut, or other resource from the component. In this case, you must also change the name or target location of every resource in the component.


Changing the Component Code (Windows)
更新只会重新安装/覆盖文件。源文件和名称取自新的 msi。当您重命名文件/快捷方式时,对旧文件名的引用会丢失。
这就是为什么旧链接没有被安装程序覆盖和覆盖的原因。

关于wix - 为什么Major upgrade(迁移)后有两个快捷方式?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14773233/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com