Inno Setup - 强制当前用户使用桌面图标,无提示

tru*_*kew 3 inno-setup

我需要无条件地为我的应用程序创建一个桌面图标,用户无法选择更改它。

我希望我在这里看到的一些问题能够帮助我(总是创建一个桌面图标,创建两个图标等),但我一直无法弄清楚。

我的代码已经是

[Icons]
Name: "{commonprograms}\{#MyAppName}"; Filename: "{app}\{#MyAppExeName}"; WorkingDir: "{app}"
Name: "{commondesktop}\{#MyAppName}"; Filename: "{app}\{#MyAppExeName}"; Tasks: desktopicon; WorkingDir: "{app}"
Name: "{userappdata}\Microsoft\Internet Explorer\Quick Launch\{#MyAppName}"; Filename: "{app}\{#MyAppExeName}"; Tasks: quicklaunchicon; WorkingDir: "{app}"
Run Code Online (Sandbox Code Playgroud)

[Icons]
Name: "{commonprograms}\{#MyAppName}"; Filename: "{app}\{#MyAppExeName}"; WorkingDir: "{app}"
Name: "{commondesktop}\{#MyAppName}"; Filename: "{app}\{#MyAppExeName}"; WorkingDir: "{app}"
Name: "{userappdata}\Microsoft\Internet Explorer\Quick Launch\{#MyAppName}"; Filename: "{app}\{#MyAppExeName}"; Tasks: quicklaunchicon; WorkingDir: "{app}"
Run Code Online (Sandbox Code Playgroud)

删除“任务:桌面图标;” 让我认为它会无条件地执行此操作,并且没有复选框对话框。到目前为止,我未能摆脱该对话框并无条件安装它。

任何提示将不胜感激,感谢您的阅读。

tru*_*kew 5

我想这是正确的做法。我运行向导并阻止用户添加快捷方式,然后手动添加图标行,并且它起作用了。对于那些在家尝试此操作的人来说,从桌面快捷方式提示到自动放置它的更改是

删除(如果有的话)

[Tasks]
Name: "desktopicon"; Description: "{cm:CreateDesktopIcon}"; GroupDescription: "{cm:AdditionalIcons}"; Flags: unchecked
Run Code Online (Sandbox Code Playgroud)

添加

[Icons]
...
Name: "{commondesktop}\{#MyAppName}"; Filename: "{app}\{#MyAppExeName}"
Run Code Online (Sandbox Code Playgroud)

并从最后一次更改的末尾删除“; Tasks:desktopicon”(如果存在)。

我最终做了一个新的设置脚本并集成到其中。也许我有一些奇怪的指示,让事情第一次对我不起作用。