NSIS${LineRead}未提供正确的信息

NSIS${LineRead}未提供正确的信息,nsis,Nsis,对于安装程序,我需要一个特定的删除功能。 以防我有一个txt文件,其中有我需要删除的所有文件夹 txt文件的构建方式如下: 附件1成功 addon2Success 加载项3失败 我有大约10行这样的代码 主要的问题是当我打印出我从哪里得到的信息时 在我的测试用例30中,-函数不是上面的一行,而是一个数字 也许我的代码有错误: !include "${NSISDIR}\Include\LogicLib.nsh" !include "myLogger.nsh" ; Var i Functi

对于安装程序,我需要一个特定的删除功能。 以防我有一个txt文件,其中有我需要删除的所有文件夹

txt文件的构建方式如下:

附件1成功
addon2Success
加载项3失败

我有大约10行这样的代码

主要的问题是当我打印出我从哪里得到的信息时 在我的测试用例30中,-函数不是上面的一行,而是一个数字
也许我的代码有错误:

 !include "${NSISDIR}\Include\LogicLib.nsh"
 !include "myLogger.nsh" ;
 Var i

 Function removeFolder
 IntOp $i $i * 0
  ${ForEach} $i 0 $lineCount + 1
    ${LineRead} "$TEMP\addonInstallerPreFolder\addons\postponeLog.txt" "$i - $i" $0
    !insertmacro LOGGER_WRITE "DEBUG Text $0" "0"

    ${StrContains} $0 "Success" $1
    ${if} $1 == "Success"
        Push "Success"
    ${else}
        Push "Failed"
    ${endif}
    Push $0
    Call Slice
    Pop $R0

    ${if} $revertAfter == "true"
        CopyFiles "$INSTDIR\addons\backup_$R0\*" "$INSTDIR\addons\$R0"
        !insertmacro LOGGER_WRITE "Revert Backupfolder to AddonFolder $R0" "0"
    ${endif}
    !insertmacro LOGGER_WRITE "Removed Backup folder of $R0" "0"
    Delete "$INSTDIR\addons\backup_$R0"
${next}
FunctionEnd
我希望你能帮我找到解决办法,我只得到一个数字而不是一个文本 查看您的代码

${LineRead} "$TEMP\addonInstallerPreFolder\addons\postponeLog.txt" "$i - $i" $0
第一:第三个变量“[LineNumber]”应该是一位数字。看起来您有变量$i-$i。我相信你只需要“$I”

第二:文档中的第四个变量
函数显示使用$R0。看起来您在函数中使用了$0,在代码的某些区域使用了$0,但在其他区域使用了$R0。

Sry对于我最近的回复,我直到今天才上班。就像你说的,我给函数设置了错误的参数。但我也可以使用其他变量,如R$1等等。现在关键部分开始工作了。