This website uses cookies. By clicking Accept, you consent to the use of cookies. Click Here to learn more about how we use cookies.
Turn on suggestions
Auto-suggest helps you quickly narrow down your search results by suggesting possible matches as you type.
- Revenera Community
- :
- InstallShield
- :
- InstallShield Forum
- :
- Update.exe for MSI created by Developer 8 to MSI created by 2008
Subscribe
- Mark Topic as New
- Mark Topic as Read
- Float this Topic for Current User
- Subscribe
- Mute
- Printer Friendly Page
- Mark as New
- Subscribe
- Mute
- Permalink
- Report Inappropriate Content
‎Aug 13, 2008
04:21 AM
Update.exe for MSI created by Developer 8 to MSI created by 2008
Hi,
I need to create an update.exe (minor update) that updates the installation of our product from an MSI that was created by IS Developer 8 to the new MSI which was created by IS 2008.
The IS MSI project originally used in Developer 8 was upgraded in IS 2008 which means that the components and product codes match.
The update.exe is being created successfully (despite of some warning of components that allegedly have been removed). When I then apply the update.exe to an installation, the process succeeds and the files are updated correctly (as far as I could see).
Here now the problem: In "Add and Remove Programs", the entry for our product lost its "Change" and "Remove" buttons. When I install either old or new MSI they are shown and work correctly.
I then ran msiexec /x {productcode} manually which appeared to do the normal procedure. However, even after rebooting, the "Add and Remove Programs" still shows the product (but it lost its icon) and the program menu entries have not been removed. This also works when installing/uninstalling either of both MSIs without doing the update.
We've created update.exe using Developer 8 for years and never had problems. Also the update from one IS 2008 MSI to another appears to be fine. Only the Dev8 -> IS2008 is dodgy ...
Does anyone have experience if this type of update.exe is actually supported? If so, do you have any clue where to start looking for the problem?
Thanks for any suggestion
Oskar.
I need to create an update.exe (minor update) that updates the installation of our product from an MSI that was created by IS Developer 8 to the new MSI which was created by IS 2008.
The IS MSI project originally used in Developer 8 was upgraded in IS 2008 which means that the components and product codes match.
The update.exe is being created successfully (despite of some warning of components that allegedly have been removed). When I then apply the update.exe to an installation, the process succeeds and the files are updated correctly (as far as I could see).
Here now the problem: In "Add and Remove Programs", the entry for our product lost its "Change" and "Remove" buttons. When I install either old or new MSI they are shown and work correctly.
I then ran msiexec /x {productcode} manually which appeared to do the normal procedure. However, even after rebooting, the "Add and Remove Programs" still shows the product (but it lost its icon) and the program menu entries have not been removed. This also works when installing/uninstalling either of both MSIs without doing the update.
We've created update.exe using Developer 8 for years and never had problems. Also the update from one IS 2008 MSI to another appears to be fine. Only the Dev8 -> IS2008 is dodgy ...
Does anyone have experience if this type of update.exe is actually supported? If so, do you have any clue where to start looking for the problem?
Thanks for any suggestion
Oskar.
(2) Replies
- Mark as New
- Subscribe
- Mute
- Permalink
- Report Inappropriate Content
‎Aug 13, 2008
11:53 AM
The information written to the uninstall key by InstallScript MSI projects has changed from what was written with a Developer 8 built project. This is the cause of the Add/Remove Programs entry losing the change/remove button. You could try looking at the differences in the uninstall key before and after applying the patch, and include the different registry entries in the patch (in the Registry view or script such an in the OnPatchUIAfter event). The recommended solution would be to perform a major upgrade to remove any use of the old InstallScript engine from Developer 8 (the engine was changed in IS 12 to be much more stable than what was used in Developer 8).
Also, to uninstall an InstallScript MSI project, the UninstallString value from HKLM\Software\Microsoft\Windows\CurrentVersion\Uninstall\InstallShield_{ProductCode} needs to be used. Running the uninstall with msiexec will fail to remove anything placed on the system by the script engine (such as the uninstall key).
Also, to uninstall an InstallScript MSI project, the UninstallString value from HKLM\Software\Microsoft\Windows\CurrentVersion\Uninstall\InstallShield_{ProductCode} needs to be used. Running the uninstall with msiexec will fail to remove anything placed on the system by the script engine (such as the uninstall key).
- Mark as New
- Subscribe
- Mute
- Permalink
- Report Inappropriate Content
‎Aug 14, 2008
05:11 AM
Hi!
Thanks, that was a good clue. With that in mind I found this article:
Remove/Modify missing from Add/Remove control panel entry
This solved the problem for me, as well.
Unfortunately, this is not an option for us.
Thanks
Oskar.
joshstechnij wrote:
You could try looking at the differences in the uninstall key before and after applying the patch, and include the different registry entries in the patch (in the Registry view or script such an in the OnPatchUIAfter event).
Thanks, that was a good clue. With that in mind I found this article:
Remove/Modify missing from Add/Remove control panel entry
This solved the problem for me, as well.
The recommended solution would be to perform a major upgrade to remove any use of the old InstallScript engine from Developer 8 (the engine was changed in IS 12 to be much more stable than what was used in Developer 8).
Unfortunately, this is not an option for us.
Thanks
Oskar.