Inno Setup Start menu uninstall shortcut is not shown on Windows 10

让人想犯罪 __ 提交于 2019-12-30 09:51:35

问题


I've got an issue that seems to be specific to Windows 10 with the Start menu uninstall shortcut I create in my setup. The shortcut is simply not shown.
However, others shortcuts I create are shown as well...

Here is the value for DefaultGroupName:

DefaultGroupName={#MyAppPublisher}\MyCompany\MySoftwareName

Here are my entries for shortcuts in [Icons] section:

[Icons]
Name: "{group}\{#MyAppName} {#MyAppVersion}"; Filename: "{app}\MyExeName.exe"; WorkingDir: "{app}"
Name: "{commondesktop}\{#MyAppName} {#MyAppVersion}"; Filename: "{app}\MyExeName.exe"; WorkingDir: "{app}"; IconFilename: "{app}\MyExeName.exe"
Name: "{userappdata}\Microsoft\Internet Explorer\Quick Launch\{#MyAppName} {#MyAppVersion}"; Filename: "{app}\MyExeName.exe"; WorkingDir: "{app}"; Tasks: quicklaunchicon
Name: "{group}\{cm:UninstallProgram, {#MyAppName} {#MyAppVersion}}"; Filename: "{uninstallexe}"; WorkingDir: "{app}"; IconFilename: "{app}\Remove.ico"
Name: "{group}\{cm:SHORTCUT_SAV}"; Filename: "{code:GetDataDir}"

I've tried a simple entry too:

Name: "{group}\Uninstall My Program"; Filename: "{uninstallexe}"

But shortcut is still not shown.

Note that this works fine in any previous version of Windows...

Do you have any idea on this? I've search but I have not found any topic related to this specific problem.


回答1:


Windows 8 and newer employs lots of optimizations to the Start menu to reduce number of items shown.

For example it won't display two shortcuts pointing to the same target, no matter, if the shortcuts have different labels or are placed in different menu folders.

You are probably a victim of such optimization.

Anyway, what you are trying to do is against Windows guidelines:

  • You should not use Start menu folders in Windows 8 and newer.
  • You should not add a shortcut to an uninstaller to the Start menu, on any version of Windows. The user should go to Control panel or Settings app to uninstall a program (that's also a possible explanation, why the shortcut is not shown).



回答2:


I had the same problem. In my case sometimes only the uninstall shortcut in windows start menu disappers.

Somehow I fixed it.

Just use in Icons-section the command to create this shortcut twice. Their names need to differ.

For example:

Name: "{group}\{#Uninstall_Name} {#MyAppName}"; Filename: "{uninstallexe}";IconFilename: {app}\{#IconFileStartDesktop};

Name: "{group}\{#MyAppName} {#Uninstall_Name}"; Filename: "{uninstallexe}" ;IconFilename: {app}\{#IconFileStartDesktop};

If the first uninstall-shorcut does not show up, the second one will do it.




回答3:


new to the group and to INNO. :)

I figured a workaround to have an UNINSTALL entry in the START MENU.

[Icons]

Name: "{group}\{cm:UninstallProgram,{#MyAppNameShort}}"; Filename: "{#MyUninstallFilesDir}\unins000.exe"; Tasks: startmenu

It's not elegant having to hard-code the EXE, but it works in Win10 64-bit. My plan for updates is to uninstall the Access Front-end, leave the Back End alone, and reinstall only the Front-end.

(in theory...)

Robert :)




回答4:


Name: "{group}\{cm:UninstallProgram,{#MyAppName}}"; Filename: "{uninstallexe}"
Name: "{group}\{cm:UninstallProgram,{#MyAppName}}"; Filename: "{uninstallexe}

Just insert the command twice..done:)



来源:https://stackoverflow.com/questions/39371607/inno-setup-start-menu-uninstall-shortcut-is-not-shown-on-windows-10

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!