2011-11-03 73 views
0

我有我的应用程序的两个不同版本(基本和专业)。我为这两个版本创建了两个不同的安装项目。我想限制用户每个系统只安装一个版本。如果用户有基本版本,并且他尝试安装专业版本,我必须卸载基本版本。InstallShield存在应用程序检查

任何人都可以告诉我如何检查我的基本版本的注册表项,并卸载如果用户试图安装专业版本?我也必须做反之亦然。

我正在使用InstallShield 2011,我的项目类型是BASIC MSI。

早期帮助将不胜感激..

感谢, 维奈

回答

1

我会考虑的方法是使用主要升级。然后,您可以选择是针对两个版本使用相同的升级代码,还是使用两个不同的升级代码,并为其他版本(除了它自己的版本)提供升级条目。

如果您希望允许跨版本降级而不允许同一版本降级,请使用两种不同的升级代码。如果你想不允许任何版本降级,交叉版本或其他方式,任何一个选项都可以工作(为了清晰起见,我倾向于建议不同的代码,但它并不重要)。

+0

您的意思是每个版本都应该更改两个版本的升级代码。如何处理降级。请你多解释一下 –

+0

请参阅http://kb.flexerasoftware.com/doc/Helpnet/installshield14helplib/PreventingDowngrades.htm了解防止降级的信息;无论是针对您的UpgradeCode还是针对其他人的,此策略同样适用。对于较低版本,您可以选择是否要阻止或自动卸载并替换现有软件包。 –

+0

不,我并不是说每个版本都应该使用不同的UpgradeCode。每个版本都应该有自己的代码,这样您就可以决定如何处理不同的交叉版本方案,而无需预先确定产品代码列表。 –