【问题标题】:Inno Setup - display warning pageInno Setup - 显示警告页面
【发布时间】:2013-07-29 02:54:16
【问题描述】:

我正在使用 Inno Script Studio 构建安装程序,到目前为止非常成功,因为 Inno Setup 是一个很棒的软件包。

但是,我想添加一个警告页面,当用户取消选中重要任务时会显示该警告页面。我认为这只是一个简单的检查。经过一番谷歌搜索后,我意识到这将需要一些 Pascal 脚本 - 不幸的是,我不知道(以下证据)......

begin
  if not IsTaskSelected('ImportantTask') then
    WarningPage := CreateOutputMsgPage(wpSelectTasks, 'Caution',
    'Please read the following important information before continuing.',
    'You have not selected the ImportantTask option. Click "Back" to
    reselect ImportantTask, or click "Next" to continue at your own risk.');
  end;

不出所料,这不起作用。


以下是要求:

  • ImportantTask默认勾选。
  • 如果 ImportantTask 未选中,则显示 WarningPage 和 Risk Acknowledgement 复选框。
  • 如果未选中风险确认复选框,请禁用下一步按钮。

我不想以大的 [代码] 部分结束,但可能没有其他选择。
提前感谢您的帮助。

【问题讨论】:

    标签: inno-setup


    【解决方案1】:

    使用 msgbox 的替代向导页面。 Msgbox 特别用于向用户提供任何指示(信息、警告等)..
    此脚本可根据您的要求工作。

    [Setup]
    AppName=MySetup 
    AppVersion=1.5
    DefaultDirName={pf}\MySetup 
    [Tasks]
    Name: "ImportantTask"; Description: "This task should be selected"; GroupDescription: "Important tasks";
    [Code]
    function NextButtonClick(CurPageID: Integer): Boolean;
    begin
      Result := True;
      if (CurPageID = wpSelectTasks) and not IsTaskSelected('ImportantTask') then
        Result := Msgbox('You have not selected the ImportantTask option.' + #13#10 + 
          'Are you sure you want to continue ?', mbInformation, MB_YESNO) = IDYES;
    end;
    

    感谢 TLama...

    【讨论】:

    • 谢谢! - 那太棒了。使用消息框也是个好主意,因为它是吸引用户注意力的可靠方式。如果CurPageID 不是wpSelectTasks,我将您的代码修改为else Result := True;,因为我的设置文件中有一些其他页面。
    • 这里是a fix for the above script。有几件事情需要注意。结果不需要这么多if 条件,它总是评估为真。只需在方法开始时将其设置为 True 即可。我猜你想当用户用IDNO 回答对话框时留在页面上,这不在这里。 IsTaskSelected 函数的使用是正确的。您不应该依赖固定索引。最后,换行符是#13#10,而不仅仅是#13 ;-)
    • @TLama 非常感谢你给出这么好的解释......,我看过你的两种代码方法......第二种方法非常令人印象深刻......
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-01-14
    • 1970-01-01
    • 1970-01-01
    • 2013-10-11
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多