我的第一个版本中有这个组件:
<ComponentGroup Id="ProgramMenuComponents" Directory="PROGRAMMENUFOLDER">
<Component Id="ApplicationShortcut">
<Shortcut Id="ApplicationStartMenuShortcut" Name="$(var.ProductName)" Icon="icon.ico" Description="$(var.ProductName)" Target="[InstallFolder]$(var.MyApp.TargetFileName)" WorkingDirectory="InstallFolder"/>
<RemoveFolder Id="PROGRAMMENUFOLDER" On="uninstall"/>
<RegistryValue Root="HKCU" Key="Software\MyCo\MyApp" Name="installed" Type="integer" Value="1" KeyPath="yes"/>
<Shortcut Id="UninstallProduct" Name="Uninstall $(var.ProductName)" Target="[SystemFolder]msiexec.exe" Arguments="/x [ProductCode]" Description="Uninstalls $(var.ProductName)" />
</Component>
</ComponentGroup>
UninstallProduct
我在下一个版本中删除了该元素。现在当我安装第一个版本时,对第二个版本进行重大升级,然后卸载快捷方式仍然存在。如何确保在重大升级时将其删除(甚至在卸载之前)。计划进行重大升级afterInstallExecute
(必须保持这种情况)。
<MajorUpgrade Schedule="afterInstallExecute"/>