在安装之前强制Installshield卸载

时间:2009-03-13 11:31:56

标签: upgrade installshield uninstall installscript

我有一个InstallShield 12安装脚本。我想在安装新版本之前卸载旧版本。我将保持包的名称不变。我怎么能这样做?

2 个答案:

答案 0 :(得分:2)

假设这不是MSI项目,并且您保留了相同的项目GUID,则只需在ComponentUninstall()函数中调用OnMaintUIBefore即可。 如果Project GUID不相同,您可以在HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\{PROJECT_GUID}下的注册表中查看卸载字符串,然后使用它执行LaunchApp。

希望它有所帮助。

答案 1 :(得分:1)

使用基于MSI的项目,可以通过为项目配置主要升级来完成。 InstallScript项目不存在升级,但没有Windows Installer限制可以防止您同时运行多个安装。您应该能够在InstallScript代码中手动运行先前版本的卸载(可能在OnFirstUIBefore函数中)。