我是使用installshield(2012)的新手,我很难做某事 - 谷歌搜索似乎没有把任何事情搞砸,因为我试图做一些非常普遍的事情。
基本上我只想在我的安装程序中显示一个新的自定义对话框,具体取决于何时设置要安装的功能。 (它是收集一个包含数据库位置的字符串输入)。您可以在向导中添加对话框时设置对话框的条件,以便我可以选择
_IsSetupTypeMin = Complete
安装所有功能时会显示对话框。但是,如果用户选择自定义安装'并仍然选择要安装的功能,它仍应显示对话框。我不了解安装的各个功能如何存储在属性中,或者如何引用是否安装了该功能,因此无法为此编写语句。
很抱歉,如果这是一个简单的问题,工作要求我这样做,InstallShield似乎非常不直观。
答案 0 :(得分:3)
确实,“&”前缀将给出功能的操作状态。值3表示INSTALLSTATE_LOCAL,表示该功能正在本地计算机上安装。
例如,条件表达式“& MyFeature = 3”仅在MyFeature从当前状态更改为在本地计算机上安装的状态INSTALLSTATE_LOCAL时才计算为True。
以下是“条件语句语法”一文,其中包含相关信息: http://msdn.microsoft.com/en-us/library/aa368012(v=vs.85).aspx
答案 1 :(得分:2)
好吧我最终找到了解决方案。只需使用&符号后跟您的功能名称,然后附加'= 3'。三个代表它将被安装。 &告诉InstallShield它是一个功能名称。
因此:
&FeatureName = 3
我希望这可以帮助其他人,因为很难找到解决方案,并且看起来似乎是一个非常普遍的问题,我相信其他人会很高兴知道这一点。