访问在另一个文件中声明的变量

时间:2013-04-30 02:14:43

标签: installer nsis

我是NSIS的新手,并开始使用CoolSoft NSIS对话框设计器为我的安装程序创建自定义页面。我需要根据用户从下拉框中选择隐藏/取消隐藏某些文本框。我已将自定义页面包含在我的主要脚本文件中,但似乎无法访问自定义页面中定义的变量。

所以我的问题是,是否可以访问当前脚本中包含的另一个脚本中定义的变量?

3 个答案:

答案 0 :(得分:1)

如果您在自定义页面中声明了变量,那么您是否将变量声明为全局变量? variables的手册说明:

  

在节或函数中定义的变量必须使用/ GLOBAL标志。在部分和函数之外不需要/ GLOBAL标志。

答案 1 :(得分:1)

使用 / GLOBAL 标志声明变量 - 它们将随处可见。

Var /GLOBAL myVariable

如果您想使用来自不同脚本文件的符号(而非变量),则需要使用!include 告诉编译器使用该文件中的符号。

!include "LogicLib.nsh"

答案 2 :(得分:1)

NSIS中的所有变量都是全局变量,您应该能够在声明之后使用任何变量:

foo.nsh:

var myvar

bar.nsi:

!include foo.nsh
...
section
strcpy $myvar "baz"
sectionend