views:

24

answers:

0

Hi,

I am releasing a new version of my product (minor upgrade), which I'm planning to package as a patch. This is a Basic MSI project in InstallShield 2009.

The installer creates some shortcuts on the desktop and in the All Program menu, this shortcuts make a reference to the version number, e. gr. "My Product 7.3", "My Product 7.3.2".

The change in the name of the shortcut is causing that after the upgrade is finished, the system ends up with duplicated shortcuts, one for version 7.3 and a second for version 7.3.2.

I made some research on this and started using the RemoveFile table, this worked fine when I created my patch 7.3.1, but now in patch 7.3.2 it isn't working in some cases. Let me clarify this.

This scenario DOES work:

  1. I install my product version 7.3 (full installer)
  2. Run patch 7.3.1 (windows installer patch). Shortcut for 7.3 is deleted fine.
  3. Run patch 7.3.2 (windows installer patch). Shortcut for 7.3.1 is deleted fine.

This scenario does NOT work:

  1. I install my product version 7.3 (full installer)
  2. Run patch 7.3.2 (windows installer patch). Shortcut for 7.3 is NOT deleted.

Note: I have tested my 7.3.2 version by running the full installer instead of the patch, and it works fine. It performs the minor upgrade and removes the old shortcut.

In my 7.3.2 patch I've added both 7.3 and 7.3.1 as previous setups.

A verbose log doesn't seem to provide much information (or probably I'm not doing the right search).

The component associated to the records in the RemoveFile table is updated correctly which I can verify in the log:

MSI (s) (58:EC) [15:51:44:846]: Component: ProgramFiles; Installed: Local;   Request: Local;   Action: Local

I will appreciate any help that you may provide.

Thanks.

Juan Carlos