I am using the following lines to create icons:
Name: "{group}\<PRODUCTNAME>"; Filename: "{app}\<PRODUCTEXENAME>"
Name: "{group}\<PRODUCTNAME> (Log Mode)"; Filename: "{app}\<PRODUCTEXENAME>"; Parameters: "/log"
Name: "{group}\{cm:ProgramOnTheWeb,<PRODUCTNAME>}"; Filename: "{app}\<PRODUCTNAME>.url"
Name: "{group}\{cm:UninstallProgram,<PRODUCTNAME>}"; Filename: "{uninstallexe}"
Name: "{userdesktop}\<PRODUCTNAME>"; Filename: "{app}\<PRODUCTEXENAME>";
Name: "{commondesktop}\<PRODUCTNAME>"; Filename: "{app}\<PRODUCTEXENAME>"; WorkingDir: "{app}"
Name: "{userappdata}\Microsoft\Internet Explorer\Quick Launch\<PRODUCTNAME>"; Filename: "{app}\<PRODUCTEXENAME>";WorkingDir:"{app}"
I guess I just did a mistake where I place a desktop icon twice.
Does anybody see where my mistake is?
You create 1 icon for Current User {userdesktop} and 1 icon for All Users {commondesktop}. After installation if you would log on to another account you would see only {commondesktop} one.
You should choose only 1 of those 2, which corresponds to your application behavior. If your application should work for every user on the computer, you should choose the {commondesktop}, but if it is intended to work only for User who installed the application, you should choose {userdesktop}.
Related
[ICONS]
Name: {commondesktop}\{#oemtitle}; Filename: {app}\app.exe; WorkingDir: {app}; IconIndex: 0; Flags: createonlyiffileexists
How to make the above icon only if running elevated, currently my setupper displays an error dialog for this icon when setupper is executed with the lower permissions as I have PrivilegesRequiredOverridesAllowed=dialog that allows end-user to choose to install to themself only.
Use {autodesktop} constant to create the icon on common desktop when elevated and on user's desktop otherwise.
[Icons]
Name: {autodesktop}\{#oemtitle}; Filename: {app}\app.exe; ...
To answer your literal question: To create an icon when running elevated only, use Check parameter with IsAdminInstallMode function (or IsAdmin).
[Icons]
Name: {commondesktop}\{#oemtitle}; Filename: {app}\app.exe; \
WorkingDir: {app}; IconIndex: 0; Flags: createonlyiffileexists; \
Check: IsAdminInstallMode
I am looking for the option to create a URL link with Inno Setup on the desktop.
I need to call my web application with some parameters. Till now I was only able to create a shortcut to my application folder an my program, but how to create a URL link?
I think it must be solved in the Icons section?
[Icons]
Name: "{group}\MyAPP"; Filename: "{app}\MYPROG.EXE"; WorkingDir: "{app}"
Name: "{group}\App Logs"; Filename:"{commonappdata}\Foo\App\logfiles"; \
WorkingDir: "{commonappdata}\Foo\App\logfiles"
Name: "{group}\Uninstall"; Filename: "{uninstallexe}"
Just set the Filename parameter to the URL:
Filename (Required)
...
In addition to file and folder names, URLs (web site addresses) may also be specified. When a URL is specified, Setup will create an "Internet Shortcut" (.url) file, and ignore the Parameters, WorkingDir, HotKey, and Comment parameters.
Example:
[Icons]
Name: "{autodesktop}\Web"; Filename: "https://www.example.com/"
Internet shortcuts must be specified in INI section
[INI]
FileName={commondesktop}\MyShortcutName.url,Section:InternetShortcut;Key:URL;String: Http://MyShortcutName.com
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.
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).
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.
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
:)
Name: "{group}\{cm:UninstallProgram,{#MyAppName}}"; Filename: "{uninstallexe}"
Name: "{group}\{cm:UninstallProgram,{#MyAppName}}"; Filename: "{uninstallexe}
Just insert the command twice..done:)
hi i am havinf trouble with icons,on the setup part i have got this:
UninstallDisplayIcon="X:\Design\IdOntime\icon_ontime.ico"
this icon is in a server, and i can reach the server folder in a mapped drive, in this case x:.
So this is saying where the uninstall icon is, and when i run setup the uninstall icon appear correclty.
Now moving to the icons on the desktop and the init menu..
[Icons]
Name: "{group}\{#MyAppName}"; Filename: "{app}\{#MyAppExeName}"; IconFilename: "X:\Design\IdOntime\icon_ontime.ico"
Name: "{commondesktop}\{#MyAppName}"; Filename: "{app}\{#MyAppExeName}"; Tasks: desktopicon; IconFilename: "X:\Design\IdOntime\icon_ontime.ico"
i am using the same path, but this time instead of the icon , it appears a blank page. What i can understant is that the windows didnt find the icon so it is puting a default icon.
what is even more stange is that if i change the path of the icon to a local path, it works.
so does inno setup icons section doenst like mapped path?
thanks in advance..
According to this question I know how to put an application in the autostart folder without user interaction. But how can I let user decide if he wants that or not via checkbox?
Thanks to TLama and some more googling I did it like this:
[Tasks]
Name: startup; Description: "Automatically start on login"; GroupDescription: "{cm:AdditionalIcons}"
[Icons]
Name: "{userstartup}\{#MyAppName}"; Filename: "{app}\{#MyAppExeName}"; Tasks: startup