• Status: Solved
  • Priority: Medium
  • Security: Public
  • Views: 1387
  • Last Modified:

Change label on Add/Remove Programs button from Installshield MSI

I would like our uninstall to always force the user through the GUI sequence from ADD/REMOVE programs.

 I can control which buttons are removed on the dialog by setting ARPNOREPAIR and ARPNOREMOVE.

However,  I am then left with only a CHANGE button which is confusing to users who want to uninstall.  

I have seen a CHANGE/REMOVE button on some applications.  

Is it possible to change this button label using a custom action from an MSI install project?
0
vas85
Asked:
vas85
  • 4
  • 2
1 Solution
 
jmcmunnCommented:
Well, I think by setting the ARPNOREMOVE you are making it so the button will not say "Remove" on it.

This is an old article...but I think the settings still apply to current Installshield versions: http://www.installationdeveloper.com/298/controlling-what-shows-up-in-addremove-programs/

As far as the user interface once they click this button, are you trying to change something about the way it works now?
0
 
Vadim RappCommented:
Unfortunately, it's impossible. Here's why.

Add/remove programs shows "change/remove" button for non-Installer installations, but separate buttons for Installer-based ones. It determines whether the installation is Installer-based or not by two things: one is value "WindowsInstaller" in the key under Uninstall; another is the key under Software\Microsoft\Installer\Products.

If we remove WindowsInstaller value (which we can do by deferred custom action), add/remove programs will then show two entries for this product - one taken from Software\Microsoft\Installer\Products, another from Uninstall. The latter one will indeed have "change/remove" button, but the other one will be like before. We would have to remove that key as well. You decide if this amount of screwing the registry is worth it.

Here's what I would try. Mark the installation as hidden from add/remove programs (property ARPSYSTEMCOMPONENT=1); create registry entries under Uninstall, representing this product with the UninstallString invoking full UI. Two values are enough - DisplayName and UninstallString.
0
 
vas85Author Commented:
Your suggestion worked,  thank you!

I will need to clean up the entries I created.  Is just after the InstallFinalize action the Execute sequence the correct place?
0
Cloud Class® Course: Microsoft Azure 2017

Azure has a changed a lot since it was originally introduce by adding new services and features. Do you know everything you need to about Azure? This course will teach you about the Azure App Service, monitoring and application insights, DevOps, and Team Services.

 
Vadim RappCommented:
> I will need to clean up the entries I created.

No, it will be registry setting like any other, so it should be removed automatically during uninstall.
0
 
vas85Author Commented:
yes, of course.  In my test, I just created them manually.

Thanks once again.
0
 
vas85Author Commented:
I've requested that this question be closed as follows:

Accepted answer: 0 points for vas85's comment #a38760997

for the following reason:

The technical level of detail was clearly and concisely communicated. &nbsp;<br />The solution was as simple as possible given the question. <br /><br />&nbsp;The reasons it could not be accomplished in the manner I was asking about were also well explained.
0
 
vas85Author Commented:
The technical level of detail was clearly and concisely communicated.  
The solution was as simple as possible given the question.

 The reasons it could not be accomplished in the manner I was asking about were also well explained.
0
Question has a verified solution.

Are you are experiencing a similar issue? Get a personalized answer when you ask a related question.

Have a better answer? Share it in a comment.

Join & Write a Comment

Featured Post

Cloud Class® Course: SQL Server Core 2016

This course will introduce you to SQL Server Core 2016, as well as teach you about SSMS, data tools, installation, server configuration, using Management Studio, and writing and executing queries.

  • 4
  • 2
Tackle projects and never again get stuck behind a technical roadblock.
Join Now