【问题标题】:NSIS, progress bar not showing 100% on completionNSIS,进度条在完成时未显示 100%
【发布时间】:2011-06-07 01:09:48
【问题描述】:

我使用 NSIS 创建安装程序。在我的脚本中!define MUI_FINISHPAGE_NOAUTOCLOSE 以便用户可以看到安装文件日志。 但是这里我的问题甚至是进度文本显示已完成。下面的进度条没有反映 100%。 请找到这个

问题只发生在 windows 7 中,在 Windows Xp 中没问题。

AFAIK pidgin 使用 NSIS 安装程序脚本,为此我可以看到它的进度条在完成时显示 100%。

【问题讨论】:

标签: nsis


【解决方案1】:

您确定 XP 上的进度条达到 100% 吗?根据视觉风格,它可能看起来是 100%(您可以尝试使用“XPStyle off”来平滑进度条(InstProgressFlags smooth))

通常的原因是在一个部分中返回:

Section
;some code here
${If} $x = $y
  return
${EndIf}
;some code here
SectionEnd

要解决返回问题,您可以更改代码以使用 if/else 块,或者将所有逻辑放在一个函数中并从该部分调用该函数。

【讨论】:

    【解决方案2】:

    避免在部分内使用'return',一旦在一个部分中使用'return',进度条可能会从SectionEnd'跳转'进度。

    相对跳转(又名 GoTo)到脚本上的负位置可能会导致同样的问题。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2012-07-30
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2020-06-08
      相关资源
      最近更新 更多