如何根据vbscript自定义操作结果中止InstallShield安装?

时间:2008-12-02 14:46:08

标签: vbscript windows-installer installshield

我创建了一个vbscript自定义操作,它检查一些注册表项并在必要时更改它们。如果无法写入密钥或类似的密钥,则应中止设置。

为了实现这一点,我设置了一个属性,我尝试将其用作执行序列中下一步的条件,但这不起作用。

我发现这不起作用,因为自定义操作在执行时无法写入属性。

所以问题是:如何根据我的自定义操作说明实现安装中止?有没有一种方法可以将“中止安装请求”传递给安装程序或类似的东西?

2 个答案:

答案 0 :(得分:3)

如果您在http://community.installshield.com上搜索,您会找到Robert Dickau撰写的题为“从自定义操作中退出MSI安装”的文章。它位于以下链接:

http://community.installshield.com/showthread.php?p=418197

以下是他用作代码的代码片段:

Function ExitSetupFromVBS( )

Const IDABORT = 3

    ' ...do some work...

    ' abort the installation
    ExitSetupFromVBS = IDABORT

End Function
祝你好运。

答案 1 :(得分:0)

你需要从你的函数返回3表示失败,0或1表示成功。

以下是关于该主题的msdn文章:http://msdn.microsoft.com/en-us/library/aa371254(VS.85).aspx

确保将脚本放在函数中。