0

在 NSIS 中,如何从另一个标签内跳转到一个标签?

注意:我不确定我所说的是否真的被称为标签,如果我错了,请纠正我。

在以下代码中,我想跳转到标签“InstallFiles”,请参见“# SEE HERE”行:

# the following code is from within a macro
# Check the directory exists
IfFileExists $installDirectory InstallFiles CreateDirThenInstall

CreateDirThenInstall:   # this is a label...I think? :P
  file $installDirectory
  # SEE HERE: HOW DO I call the label 'InstallFiles'?

InstallFiles:
  DetailPrint "SetOverwrite on."
  SetOverwrite try
  SetOutPath "${dir}"
  file "Attributes_to_trees_panel.4do"
  file "ATTRIBUTES_TO_TREES_PANEL.hlp"
4

1 回答 1

2

从下面的行转到InstallFiles标签您无需做任何事情CreateDirThenInstall:只需让执行到达下一行。

您可能误解了标签实际上并不声明子程序,它们仅放置可以从任何流控制指令(在当前函数或节中)到达的“符号”,例如StrCmp,IntCmpGotos。如果标签上方有语句并且没有跳转或Return就在它之前,则执行继续到标签之后的下一条语句。

于 2012-05-03T07:51:34.987 回答