在 Inno Setup 中消息框被抑制是什么意思?

What does it mean that message boxes are being suppressed in Inno Setup?

这是文档中的一页:SuppressibleMsgBox

这是什么意思如果消息框被抑制...

在你引用的部分后面有一个 link 的解释:

If message boxes are being suppressed (see Setup Command Line Parameters), Default is returned.

在 link 中,记录了 /SUPPRESSMSGBOXES commandline parameter

Instructs Setup to suppress message boxes. Only has an effect when combined with '/SILENT' or '/VERYSILENT'.

所以通常情况下,SuppressibleMsgBox 的行为与 MsgBox 相同。但是如果你 运行 安装程序带有 /SUPPRESSMSGBOXES 参数,SuppressibleMsgBox 什么都不做,只是默默地 returns Default 参数的值。

函数使用实例:

function NextButtonClick(CurPageID: Integer): Boolean;
var
  Dir: string;
  Msg: string;
begin
  Result := True;
  if CurPageID = wpSelectDir then
  begin
    Dir := WizardForm.DirEdit.Text;
    if Pos(' ', Dir) > 0 then
    begin
      Msg :=
        'It is not recommended to install the application to a path with spaces. '
        + 'Do you want to continue anyway?';
      if SuppressibleMsgBox(Msg, mbInformation, MB_YESNO, IDYES) = IDNO then
      begin
        Result := False;
      end;
    end;
  end;
end;

在交互式安装中,如果用户尝试安装到带空格的路径,安装程序将发出警告。但是,如果您使用 /SILENT /SUPPRESSMSGBOXES 自动执行静默安装,安装程序将继续。

当您不希望特定消息破坏静默安装时,使用 SuppressibleMsgBox 是个好主意。所以对于大多数情况。