1

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

4

2 回答 2

2

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

希望能帮助到你。

于 2010-01-21T02:44:31.397 回答
1

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

于 2009-05-05T16:35:53.790 回答