Revenera Documentation site will be unavailable on July 2nd due to scheduled maintenance. For more information see the status dashboard.

cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 
Not applicable

ARPSYSTEMCOMPONENT property not exist in Property table

Hi I am making a setup of basic MSI type. after successfully building the setup, I saw that there are two entries of my application in add remove programs.

To remove the entry from I should make the ARPSYSTEMCOMPONENT property set to 1, but I did not find the entry in the property table.

What can be the reason behind the dual entry and non existence of ARPSYSTEMCOMPONENT property in the property table?

All what I want is to have a single entry in add remove programs
Labels (1)
0 Kudos
1 Reply
Tetsuo
Level 4

Hi, to help with some logic behind this;

Windows Installer by default will create an ARP entry for each MSI installed.
If you have ARPSYSTEMCOMPONENT set to 1, the default ARP entry will still be created but will be 'hidden' and not appear in the ARP list.

The usual reasons you would set the ARPSYSTEMCOMPONENT property are either..
a) you don't want an entry to appear in the ARP list, or
b) you want to customise the handling of the uninstallation of your application.

If you wanted option b), you would achieve this via setting the ARPSYSTEMCOMPONENT (to hide the default ARP entry) and add your own registry entries that would create your custom ARP entry.

If you were then to remove the ARPSYSTEMCOMPONENT property from the above example, you will end up with your custom ARP entry and also the default windows installer ARP entry - two ARP entries!


More than likely you also have custom ARP entries being set in your registry table;

check your registry table for keys being created to:
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall

If they exist, you can either take them out and let Windows Installer handle the ARP entry, or if they are required add the property ARPSYSTEMCOMPONENT=1 to hide the default entry.

As for reason why Installshield has built your project like this - I can't answer as for a basic MSI type it should normally go with the default Windows Installer ARP behaviour.
0 Kudos