Always perform removal/reinstallation during upgrade

耗尽温柔 提交于 2019-12-03 16:04:07

What you need is a major upgrade. This is essentially an automatic uninstall of the existing version and reinstall of a new version done as one operation by the Windows Installer Engine itself after you author the Upgrade table of the MSI, set a new ProductVersion and change the package and product code. This is the least error prone update mechanism in Windows Installer. To implement a major upgrade in Installshield go to the Upgrades view and add an upgrade item. Then you follow the GUI wizard or pages and set upgrade options. I will see if I can find a better link for you now, but this should get you going.

To really understand Windows Installer Upgrades you should read this book chapter. Or this Microsoft MSDN page.

Just for completeness: a minor upgrade - which is upgrading the existing install without uninstalling it, is generally more difficult to get right in the beginning. A number of technical restrictions apply. Here is a very good summary of what is required for a minor upgrade to work (as well as other details): http://www.installsite.org/pages/en/msi/updates.htm

Stein Åsmul

In that case you can use COM automation to automate the release process using Javascript or VBScript. This is a familiar process if you have automated other products before such as Word or Excel. Here are some resources to get going:

I made a build process once using this kind of VB scripting and also a build tool called FinalBuilder that took care of the rest of the build process. I guess FinalBuilder might have an action for Installshield by this point so you can bypass the scripting altogether. I don't know for sure. Just wanted to link to the GUI so you can see what the tool looks like. Further screenshots.

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!