我是NSIS的新手,並開始使用CoolSoft NSIS對話框Designer來爲我的安裝程序創建自定義頁面。我需要根據用戶在下拉框中的選擇來隱藏/取消隱藏某些文本框。我已將自定義頁面包含在我的主腳本腳本文件中,但似乎無法訪問我的自定義頁面中定義的變量。訪問在另一個文件中聲明的變量
所以我的問題是,是否有可能訪問當前腳本中包含的另一個腳本中定義的變量?
我是NSIS的新手,並開始使用CoolSoft NSIS對話框Designer來爲我的安裝程序創建自定義頁面。我需要根據用戶在下拉框中的選擇來隱藏/取消隱藏某些文本框。我已將自定義頁面包含在我的主腳本腳本文件中,但似乎無法訪問我的自定義頁面中定義的變量。訪問在另一個文件中聲明的變量
所以我的問題是,是否有可能訪問當前腳本中包含的另一個腳本中定義的變量?
NSIS中所有變量都是全球性的,你應該能夠使用任何變量已經宣佈後:
foo.nsh:
var myvar
bar.nsi:
!include foo.nsh
...
section
strcpy $myvar "baz"
sectionend
如果您在自定義頁面內部聲明瞭變量,您是否將該變量聲明爲全局變量?該手冊規定variables即:
變量定義在一個段或函數中必須使用/ GLOBAL標誌。部分和函數外部不需要/ GLOBAL標誌。
使用/全球標誌聲明變量 - 他們將變得可見來自世界各地。
Var /GLOBAL myVariable
如果你想使用不同的腳本文件的符號(不變量),那麼你需要使用!包括告訴編譯器從該文件中使用的符號。
!include "LogicLib.nsh"
如果你在你的問題中包含編譯器錯誤,這將真的有幫助... – Anders 2013-04-30 15:10:14