从桌面innosetup替换相同的快捷方式

时间:2013-03-25 14:38:08

标签: inno-setup

桌面上已经有一个同名的快捷方式,但它是由setupfactory安装的(我想用inno替换它)。现在,当我使用innosetup创建的设置进行安装时,它会创建一个新图标,而不是替换当前的图标。我添加了[installDelete]部分但不起作用。我刚检查了快捷方式属性。我找到的差异是一个快捷方式,拥有者作为管理员组,另一个是我的用户。但两者都是由同一个用户安装的。那会是这个原因吗?这有什么解决方法吗?或者我可以检查是否存在具有相同名称的快捷方式?谢谢

两者都指向相同路径中的相同exe。 我在Windows 7中安装

2 个答案:

答案 0 :(得分:5)

在这种情况下,您应该检查两个快捷方式的位置。

可能其中一个是在公共桌面文件夹(适用于所有用户)中创建的 - {commondesktop},第二个是针对当前用户桌面文件夹预先区分的 - {userdesktop}

一个。

[Icons]
Name: "{commondesktop}\{#MyAppName}"; Filename: "{app}\{#MyAppExeName}"; 
WorkingDir: "{app}"; Tasks: desktopicon

[Icons]
Name: "{userdesktop}\{#MyAppName}"; Filename: "{app}\{#MyAppExeName}"; 
WorkingDir: "{app}"; Tasks: desktopicon

答案 1 :(得分:0)

当您在安装程序框架之间切换时,通常最好在安装新版本之前卸载旧版本(通过其卸载程序)。 (你可以自动化。)

如果您不这样做,那么用户可能会在其驱动器和多个“添加/删除程序”条目中最终出现错误的卸载程序文件;这两个都很难看。

(这是一次性的事情 - 当从一个Inno或app版本更改为另一个版本时,无需卸载旧版本,只有从非Inno更改为Inno或反之时。)