2013-04-30 60 views
0

我是NSIS的新手,並開始使用CoolSoft NSIS對話框Designer來爲我的安裝程序創建自定義頁面。我需要根據用戶在下拉框中的選擇來隱藏/取消隱藏某些文本框。我已將自定義頁面包含在我的主腳本腳本文件中,但似乎無法訪問我的自定義頁面中定義的變量。訪問在另一個文件中聲明的變量

所以我的問題是,是否有可能訪問當前腳本中包含的另一個腳本中定義的變量?

+0

如果你在你的問題中包含編譯器錯誤,這將真的有幫助... – Anders 2013-04-30 15:10:14

回答

1

NSIS中所有變量都是全球性的,你應該能夠使用任何變量已經宣佈後:

foo.nsh:

var myvar 

bar.nsi:

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

如果您在自定義頁面內部聲明瞭變量,您是否將該變量聲明爲全局變量?該手冊規定variables即:

變量定義在一個段或函數中必須使用/ GLOBAL標誌。部分和函數外部不需要/ GLOBAL標誌。

1

使用/全球標誌聲明變量 - 他們將變得可見來自世界各地。

Var /GLOBAL myVariable 

如果你想使用不同的腳本文件的符號(不變量),那麼你需要使用!包括告訴編譯器從該文件中使用的符號。

!include "LogicLib.nsh" 
相關問題