如何通过 Innosetup 删除桌面快捷方式

Posted

技术标签:

【中文标题】如何通过 Innosetup 删除桌面快捷方式【英文标题】:How to remove a desktop shortcut by Innosetup 【发布时间】:2010-11-26 00:21:57 【问题描述】:

?它是由以前的版本创建的,不再需要了。我尝试在 [InstallDelete] 中删除它

[InstallDelete]
Type: files; Name: userdesktop\Shortcut Name

并删除 CurStepChanged 事件处理程序的“ssInstall”中的文件

DeleteFile(ExpandConstant('userdesktop\Shortcut Name'));

但它们不起作用。任何建议表示赞赏!

【问题讨论】:

您可以使用此方法安全地删除以前版本中的所有个旧图标:***.com/a/22568945/32453 【参考方案1】:

任何一个选项都可以,但有几个注意事项。

1) 您需要使用 userdesktop 或 commondesktop,具体取决于快捷方式是为特定用户还是为所有用户安装的。

2) 您需要确保将 .lnk 扩展名添加到快捷方式名称中。

所以这可能会起作用:

DeleteFile(ExpandConstant('userdesktop\Shortcut Name.lnk'));
DeleteFile(ExpandConstant('commondesktop\Shortcut Name.lnk'));

[InstallDelete]
Type: files; Name: "userdesktop\Shortcut Name.lnk"
Type: files; Name: "commondesktop\Shortcut Name.lnk"

【讨论】:

Altought 我安装了名称为“commondesktop\...”的链接,上述删除它的解决方案对我不起作用,我不得不回退到类型:文件;名称: “C:\Users\Public\Desktop\My App.lnk”作为解决方法。

以上是关于如何通过 Innosetup 删除桌面快捷方式的主要内容,如果未能解决你的问题,请参考以下文章

解决Inno Setup制作安装包无法创建桌面快捷方式的问题

Inno setup更改桌面快捷方式图标

inno setup 创建桌面快捷方式的代码

Inno Setup 为程序创建桌面快捷方式

Inno Setup 为程序创建桌面快捷方式

Inno Setup 为程序创建桌面快捷方式