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

InstallShield中的全局字符串

  •  4
  • Corv1nus  · 技术社区  · 16 年前

    我尝试在InstallShield中有一个全局字符串,这样我可以在多个地方访问它。这是我第一次在其中编写脚本。以下是我的资料:

    STRING DIR;
    
    ....
    
    DIR="c:\\tempdir";
    
    function Completed_Action()
    begin
        // Here is where I try to access the DIR string.
    

    但它总是给我带来错误。有没有办法让一个全局字符串在任何函数之前设置它的值?我还应该补充一点,这是在主setup.rul之后调用的子rul脚本中。

    事先谢谢。

    1 回复  |  直到 12 年前
        1
  •  6
  •   J0e3gan jfriend00    12 年前

    如果使用的是InstallShield 11.5及更早版本,则可以在 OnBegin 方法。

    使用InstallShield 12及更高版本,使用 MsiSetProperty 和 MsiGetProperty(hMSI, "MyVariable", szSupportDir, nLen) 设置和获取全局变量,因为当基本的MSI安装执行InstallScript自定义操作时,在调用该操作之前加载已编译的InstallScript,在该操作完成之后卸载。