NSIS真的讓我很煩惱的是爲什麼有兩種不同的方式做事?NSIS有兩種方法來聲明變量和條件語句
- 爲什麼有兩種方式執行條件語句/邏輯。也就是說,使用'$ if'或使用'StrCmp'?
- 爲什麼能夠以多種不同的方式存儲變量。也就是說,使用'$ myvar'或使用'var myVar',我認爲更多
- 爲什麼程序集要訪問存儲變量?爲什麼不使用上述方法
- 爲什麼你可以使用';'來創建註釋,或'#'
你能建議一個鏈接來記錄所有的全局變量嗎?如$ INSTDIR和其他?
NSIS真的讓我很煩惱的是爲什麼有兩種不同的方式做事?NSIS有兩種方法來聲明變量和條件語句
你能建議一個鏈接來記錄所有的全局變量嗎?如$ INSTDIR和其他?
你顯然不明白的NSIS如何工作的全部。
${If}
,所有這些東西都是從LogicLib,它被添加到NSIS標準庫它已經存在了很長一段時間後。以前,您必須使用StrCmp
,IntCmp
或其中一個跳轉運算符。 ${If} a == b
只是在StrCmp
附近的語法糖,標籤全部照顧。它產生更多可維護的代碼。
Var foo
是變量聲明。 $foo
是訪問的變量。因此它們是完全不同的東西。未經指定Var foo
,您不能使用$foo
。
我不知道這是什麼意思。
重要嗎?
查看手冊。這一切都很明顯。試試Variables部分。
保留變量列表可在文檔中找到。可寫變量在4.2.2節中,常量在4.2.3中。