PDA

View Full Version : Avoid Unregistration entry in Control Panel



Sascha
12-12-2001, 05:23 AM
Hi,

Is there a way to avoid the unregistration entry added by the setup in the Control Panel->Add Remove Programs?

Thanks Sascha

JacobLevin
12-12-2001, 10:37 AM
The only way to do this would be to delete the uninstall key for your project.

You can use the RegDBDeleteKey function to delete the:

HKLM\Software\Microsoft\Windows\CurrentVersion\Uninstall\<PRojectGuid>

Key after the transfer of files.

Sascha
12-12-2001, 10:48 AM
Dear Jacob Levin,

Thank you for your answer. This is what I would have tried next, but I was not sure if this would be sufficient or if there are other keys (maybe some RunOnce settings or anything else if the installation is not completed (e.g. reboot required)).

So if this is the only key (is it?) to be affected, it should work. I'll try.

JacobLevin
12-12-2001, 10:50 AM
There might be something in the RunOnce key, but you should leave this here since it would be doing some one time only registration tasks for doing the install itself.

It would have nothing to do with the creation of the uninstall key.

Sascha
12-20-2001, 09:42 AM
Hi,

I had an uneasy sense of it. The deletion of the key was not the best idea. The effect is now that when the setup is again started, then it appears to be the first time (OnFirstUIBefore is called). This means that an uninstallation of this setup is no longer possible, (even if calling setup.exe -uninst) and all the files will be left on the hard disk ;-(

What I wanted is just to hide the entry in the Control Panel, not to kill the setup!

Sascha

JacobLevin
12-20-2001, 09:49 AM
Unfortunately that key is in fact what we use to determine whether to go into maintenance mode or not.

To get your product uninstalled, I would remove the code that you used to remove the uninstall key, run the install again to re-install the app to the same place and then uninstall.

This should remove the application.

I would have mentioned this before, but I thought this was what you were trying to accomplish (some people want to disable uninstall completely).

The Uninstall key is what tells the add/remove programs entry to display (based on the DisplayName value). Our installers will also see that key and if it is there the install will go into maintenance mode. If it isn't there then the install will display firstUIBefore etc..

Sascha
12-20-2001, 10:30 AM
OK, so there seems to be no way to just hide the installation.

Since I have a setup (Master) calling other setups (childs), is it possible to delete the key in the child setup (to hide it) and later in the Master setup to just recreate the key in order to jump into the Maintenance mode of the Child setup?

Sincerely
Sascha Jung

JacobLevin
12-20-2001, 11:38 AM
I'm not sure I would recommend that, but it surely would be possible.

You might want to only delete the DisplayName value in the uninstall key for your child installers. This will actually prevent these installs from showing up in the add/remove programs applet, but the install itself should still run in maintenance mode.