Windows installation script bug

The installation scripts path to the short cut icons is not updated when the program is not installed in the default location.

To reproduce the bug:

  1. Select a shared directory such as “c:\Program Files(x86)\Manager” when installing Manager (note to install Manager in windows program directory the installer needs to be run from an administrator command prompt).
  2. Login as another windows user
  3. Manager short cuts have the default windows application icon (not Mangers icon).
  4. Right click on the short cut, select properties then click on “Change Icon…” shows the icon path is not where Manager was installed

    Note: Tested on Windows 7 Professional 64b

this is most probably related to Windows User permissions and not something to do with Manager.

Sort of but not really.
The bug is the installation script references icon files which are not put within the selected program installation directory structure.
The consequence is windows appropriately prevents access to icon definitions located in another Windows user private directory structure, so must use default icons instead.

In more detail
When using the Manager installer to install Manager in a public windows directory, say

c:\Program Files(x86)\Manager

The icon for Manager is stored in the file

c:\Program Files(x86)\Manager\Manager.ico

However the installation script does not use this file, instead a directory is created

C:\Users<UserName>\AppData\Roaming\Microsoft\Installer{A92ECCE9-0CEE-432D-A95C-02F06B8A13F0}\

Which contains icon files for the Manager and uninstal short cuts:

ManagerDesktop_1.exe
SystemFoldermsiexec.exe

As these icon files are in a private users directory (not the installation directory) they will not be accessible by other windows users (because that’s how windows user permissions are designed to work).

Most other programs avoid this completely by adding the icon definition directly to the application executable file rather than creating and linking separate icon files during installation.