恩西斯同时循环中的多个条件

问题描述

我试图找出是否存在多个进程。

C ++:

while (cond1 || cond2) {
   ...
}

如何使用NSIS实施它?我需要这样的东西:

${DoWhile} cond1 or cond2
   ... 
${Loop}

甚至这个

${DoWhile} true
${If} cond1
${OrIf} cond2
   ... 
${EndIf}
${Loop}

解决方法

您可以无条件使用Do + Loop:

!include LogicLib.nsh

${Do}
    ${If} $1 <> 0
    ${OrIf} $2 <> 0
        # ...
    ${Else}
        ${Break}
    ${EndIf}
${Loop}

使用标签也可以:

loop:
${If} $1 <> 0
${OrIf} $2 <> 0
    # ...
    Goto loop
${EndIf}