A public forum for discussing the design of software, from the user interface to the code architecture. Now closed.
We use InstallShield for our MS Windows product. (I don't have a choice in the short term) We're having a problem if a client installs multiple versions of our product. If they uninstall the first-installed version, regardless of app version, the uninstaller removes all product keys for all instances from the registry. Uninstalling the not-earliest-installed versions in any combination does not cause the problem. Has anyone had similar problems or know where I should look? It seems to be the install log, but any guidance is appreciated.
I'm an IS virgin-I know where the config files are & can read the script but am completely unfamiliar with IS itself. For those who're gonna reply 'don't use InstallShield', believe me I wouldn't if I had a choice. I've used the Wise tool before and am looking at NSIS at SourceForge for later. Gotta fix *this* problem by Friday.
It sounds like a simple case of "I didn't put it there so I won't remove it". IS keeps track of changes and only backs out what it actually does. For example, the following scenario seems to explain what you are seeing.
1) User installs version 1. A product key is written to the registry. IS notes this fact for uninstall purposes.
2) User then installs version 2. A product key is already in the registry so IS doesn't touch it. IS notes that it shouldn't remove the product key on uninstall since it wasn't the one who wrote it there in the first place.
3) User uninstalls version 1. IS removes the product key since it put it there as part of the version 1 installation. If the user had tried uninstalling version 2 instead, the product key would not have been removed since version 2 was not the one to put it there.
I'm guessing that this is what is happening. One possible work around is to spawn a subsequent process at the end of the install that handles the product key. Since installshield is not directly adding the product key registry entry, it won't remove it for either type of uninstall.
Wednesday, January 04, 2006
Well, the registry does properly contain keys for multiple versions after the installs. Version 'A' is there along with Version 'X' and any other Versions
My scenario: installed VersionX at 9:30am, followed by VersionA, then VersionB. Uninstall VersionA, Versions B & X still in registry. Same result for uninstalling Version B - A & X still in the registry. Uninstall VersionX, all
"HKLM/SOFTWARE/<co.name>" keys are removed. Not the software, just the registry keys. Very annoying, not to mention the effect on customer production machines.
In reality, some of our customer divisions _do_ run different version because of business/budget/political reasons, so this is a real problem when they upgrade off old versions.
Yes, I would think that would be the case. I would assume that the reason why ALL of the keys end up getting wiped out is because they are under a common parent directory that gets added as part of the very first install.
Keep in mind that I could be all wet here and that the real reason could be something else. But the symptoms seem to fit.
Wednesday, January 04, 2006
This topic is archived. No further replies will be accepted.Other recent topics
Powered by FogBugz