zoukankan      html  css  js  c++  java
  • SOLUTION:InstallShield安装包中集成第三方安装包的方案选择

    我们在制作安装包时,有些情况下会涉及第三方安装的集成,这里将讨论如何调用安装第三方包,以及需要注意的事项。


    第三方安装包的介质类型有很多,主要有:单独的一个Setup.exe,单独的一个msi包,或者是类似光盘结构的一组文件及文件夹的安装包。

    首先,如何在InstallShield中添加第三方安装包:

    如果是单独的Setup.exe或单独的msi包,可以将他们添加到【Behavior and logic】 -> 【Support Files】 -> 【Language Independent】中。

    如果是一组文件以及文件夹的安装包,可以将他们添加到【Behavior and logic】 -> 【Support Files】 -> 【Advanced Files】-> 【Disk1】中。

    其次,第三方安装包在InstallShield中的路径如何获取:

    如果是单独的Setup.exe或单独的msi包, 可以通过SUPPORTDIR获取,然后组合出第三方安装包的执行路径。(注意:InstallScript工程中,SUPPORTDIR是一个系统变量,可以直接利用;而在MSI工程中,SUPPORTDIR是一个Property,所以需要通过MsiGetProperty读取)

    如果是一组文件以及文件夹的安装包,可以通过SETUPEXEDIR方安装包的执行路径。(注意:这里SETUPEXEDIR的读取方式同SUPPORTDIR)。
    最后,调用方法:
    如果是.exe文件,可以通过LaunchAppAndWait直接调用。

    如果是.msi文件,可以通过LaunchAppAndWait直接调用Windows Installer安装引擎,然后以参数的形式给入.msi路径。


    上述方式,只适用于主安装包是.exe的情况,如果是将主安装包做成单独的.msi包,其中SETUPEXEDIR将无效。

    另外,SETUPEXEDIR是InstallShield 8或9之后才有的一个系统变量,所以大家只用之前,可以通过帮助文档确认该变量的使用限制。

    版权声明: 转载时请务必以超链接形式标明文章原始出处和作者信息。 
  • 相关阅读:
    Python-HTML基础
    异常处理
    反射hasattr; getattr; setattr; delattr
    Python 属性方法、类方法、静态方法、 特殊属性__doc__ (内建属性)
    Python3 day6面向对象
    re模块计算器作业
    re正则表达式:import re ;re.search()
    hashlib模块学习:hmac
    ConfigParser模块,主要应用于对php.ini等格式的配置文件内容读取和生成。删改较少用
    ymal文档格式 处理
  • 原文地址:https://www.cnblogs.com/wanbinghong/p/1901856.html
Copyright © 2011-2022 走看看