代码之家  ›  专栏  ›  技术社区  ›  Marcus

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

  •  3
  • Marcus  · 技术社区  · 16 年前

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

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

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

    因此,问题是:根据我的自定义操作所说的内容,如何实现安装中止?是否有方法将“中止安装请求”传递给安装程序或类似的程序?

    2 回复  |  直到 16 年前
        1
  •  3
  •   Ken    16 年前

    如果你搜索 http://community.installshield.com 您将看到一篇由RobertDickau撰写的题为“从自定义操作退出MSI安装”的文章。它位于以下链接:

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

    以下是他作为示例使用的代码片段:

    Function ExitSetupFromVBS( )
    
    Const IDABORT = 3
    
        ' ...do some work...
    
        ' abort the installation
        ExitSetupFromVBS = IDABORT
    
    End Function
    

    祝你好运。

        2
  •  0
  •   Web    16 年前

    失败时需要从函数返回3,成功时需要返回0或1。

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

    确保将脚本放入函数中。