我使用InstallShield 2012创建了一个基本的独立msi文件。在安装开始之前,需要满足一个先决条件。为了检查这个先决条件,我创建了一个基于InstallScript的自定义操作,并添加到Sequences中的第一个位置。如果检查失败,则msi应显示错误消息,然后退出。因为msi将通过双击并通过msiexec静默运行,所以错误消息应该足够智能,以便在直接安装(UI可用)期间启动消息框并在静默安装期间禁止任何消息框(I使用“SpretfMsiLog”将错误消息写入msi日志文件中。
我尝试使用“msiexec / qn”运行静默安装,但仍显示消息框。有没有办法从InstallScript代码检测安装模式,因此隐藏/显示消息框?
答案 0 :(得分:0)
正确的方法是使用MsiProcessMessage来显示消息,因为它可以正确显示窗口并且已经知道何时不显示消息。但是,如果您正在寻找对已有内容的最小更改,那么检查UILevel property可能会更容易实现。
答案 1 :(得分:0)
检查UILevel的另一种方法是检查模式。
if (MODE == SILENTMODE) then
...
endif;