头文件引用:
!include "LogicLib.nsh"

 基本语句

If|Unless..{ElseIf|ElseUnless}..[Else]..EndIf|EndUnless
- 有条件的执行一个语句区块,取决于表达式。

AndIf|AndUnless|OrIf|OrUnless
- 给 If, Unless, ElseIf 和 ElseUnless 增加额外的条件语句。

IfThen..|..|
- 有条件的执行一个内联语句,取决于表达式。

IfCmd..||..|
- 条件的执行一个内联语句,取决于 NSIS 函数提供的真值。

Select..{Case[2|3|4|5]}..[CaseElse|Default]..EndSelect
- 执行多个语句区块之一,取决于表达式的值。

Switch..{Case|CaseElse|Default}..EndSwitch
- 跳转到多个标记之一,取决于表达式的值。

Do[While|Until]..{ExitDo|Continue|Break}..Loop[While|Until]
- 重复一个语句区块直到停止 取决于表达式的值。

While..{ExitWhile|Continue|Break}..EndWhile
- DoWhile..Loop 的别名 (向后兼容)

For[Each]..{ExitFor|Continue|Break}..Next
- 重复语句区块来连续改变变量的值。

Goto
要跳转的标记 | +偏移| -偏移| 用户变量(目标地址)
如果指定了标记,则跳转到 “要跳转的标记:”。

如果指定了 +偏移 或 -偏移 ,跳转会根据偏移指令相对的跳转。Goto +1 跳转到下一条指令,Goto -1 跳转到上一条指令,等等。

Goto label
Goto +2
Goto -2
Goto $0

这是原生支持的跳转,利用跳转可以写循环。