0
votes

I have an Installscript MSI project created in InstallShield. I want to be able to append the install directory to the Add/Remove Programs (Programs and Features) entry when my application is installed. This application can be installed on the workstation multiple times to different folder locations, so I want some way to visually separate them in Add/Remove Programs.

Right now, the Add/Remove Programs entry for my product looks like this:

My Application Name

I want it to look like this:

My Application Name - My Application Install Folder (replaced by [INSTALLDIR])

How do I do that?

1
You can install the same program multiple times? You might want to rethink your design...Scott Solmer
How is this even possible if the same GUIDs are used? I'm almost sure msi installer should take you to change/repair/remove...ssnobody
This is a multi-tenant capable application accessed currently through Citrix.Seth Jones

1 Answers

1
votes

I don't believe there's a supported way to do this based on the registry entry values and where they come from:

http://msdn.microsoft.com/en-us/library/aa372105(v=vs.85).aspx

that are used to show that data, and the fact that the MSI ProductName property is fixed text that I think you can't change after the install has started. You could test that of course by simply using some script or a custom action to set the ProductName property to [ProductName] plus [INSTALLDIR].

So you'd have to update that Registry item in the Uninstall registry data yourself. At the very end of the install when the entries are there modify them with custom action code by appending the INSTALLDIR value.

It's not something that people do with MSI setups and I wouldn't recommend it. The value will probably overflow the field length because ProductName is limited to 63 characters.

If the issue is that there may be several uninstall entries and you want to verify that the user is uninstalling the right one, you could probably add some dialog to show the actual version somehow if you save that install location somewhere. The ARPNOREMOVE property will prevent direct uninstall, then you can force a Modify dialog to do Change and then Uninstall with more detail. The general idea is here:

http://devdare.blogspot.com/2012/10/how-to-force-gui-uninstall-using.html