cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 
jeffmetzner
Level 3

Missing Uninstall Registry Key

I have a Basic MSI project that was created (not by me) in Express and recently converted (by me) to InstallShield 2010. It builds and installs fine, except that I'm having trouble figuring out the method by which this install is being excluded from "Add/Remove Programs". Instead of setting ARPSYSTEMCOMPONENT=1, somehow the key under "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall" is not getting created. This is (I think) preventing me from making a patch that works because the patch can't find the original install. Can anyone think of ways to either keep this key from being created or deleting it after creation? I need to reverse engineer how this was done so that I can undo it and suppress the "Add/Remove Programs" entry the correct way.
Labels (1)
0 Kudos

(4) Replies
schmoli
Level 6

You may want to see if the disabled the execution of the RegisterProduct custom action. That will cause similar things to happen if I remember correctly.
0 Kudos
jeffmetzner
Level 3

Thanks! The "RegisterProduct" action is there, but its Condition is set to "NO_ADD_REMOVE_PROGRAM" which I can't find documented anywhere. This isn't an InstallScript project, so I'm not sure where this condition is set and/or acted upon.
0 Kudos
schmoli
Level 6

jeff.metzner wrote:
Thanks! The "RegisterProduct" action is there, but its Condition is set to "NO_ADD_REMOVE_PROGRAM" which I can't find documented anywhere. This isn't an InstallScript project, so I'm not sure where this condition is set and/or acted upon.


Odd, my installers have no condition, and I couldn't find any reference to that property anywhere.. If you watch you log, you'll see if that condition is going to cause the CA to execute or not, and if it doesn't, that's 100% the reason for your product not showing up in add/remove. You could create a 'new' basic MSI project and review the condition of your RegisterProduct action and see that it doesn't have any condition on it... but basically it sounds like someone authored that setup to not leave an entry in the control panel UNLESS someone planted "NO_ADD_REMOVE_PROGRAM=1" in your command line (which seems the opposite of what someone might want, which would default to leaving an entry, and give you an option to not.
0 Kudos
jeffmetzner
Level 3

It could be an artifact from converting the project from InstallShield Express, but I agree that it's probably a good idea to try to recreate the project.
0 Kudos