Inno setup 如何禁用";“下一步”;Inno安装程序中向导窗体上的按钮?

Inno setup 如何禁用";“下一步”;Inno安装程序中向导窗体上的按钮?,inno-setup,Inno Setup,是否有办法禁用Inno安装程序向导窗体上的“下一步”按钮?很抱歉,无法直接帮助您解决特定问题。我想指出的是,Inno安装程序似乎并不基于Windows Installer,这可能会确保您的程序无法通过Windows徽标要求 我建议您看一看,它是一个直接来自Microsoft的开源安装程序创建者,有许多使用它的人的出色支持,允许您轻松创建常规的Windows installer软件包。使用Wix禁用“下一步”按钮很容易。这应该可以: Wizardform.NextButton.Enabled :=

是否有办法禁用Inno安装程序向导窗体上的“下一步”按钮?

很抱歉,无法直接帮助您解决特定问题。我想指出的是,Inno安装程序似乎并不基于Windows Installer,这可能会确保您的程序无法通过Windows徽标要求

我建议您看一看,它是一个直接来自Microsoft的开源安装程序创建者,有许多使用它的人的出色支持,允许您轻松创建常规的Windows installer软件包。使用Wix禁用“下一步”按钮很容易。

这应该可以:

Wizardform.NextButton.Enabled := False;
有关更多信息,请查看InnoSetup新闻组:

我想你现在已经找到了解决办法。 因为我也遇到了同样的问题,并且找到了解决办法,所以我把它贴在这里,希望能帮助其他人

我想在用户开始应用程序升级后禁用“取消”按钮。 使用以下步骤:

procedure CurPageChanged(CurPageID: Integer);
begin
  // always disable the cancel button; no going back now!!!
  if UpgradeInstallationMode then
    Wizardform.CancelButton.Enabled := False;
end;
手动执行此操作的另一种方法是:

procedure DisableCancelButton();
begin
  WizardForm.CancelButton.Enabled := False;
  WizardForm.Update;
end;

procedure EnableCancelButton();
begin
  WizardForm.CancelButton.Enabled := True;
  WizardForm.Update;
end;
另一种方法是使用此[Setup]指令:

[Setup]
AllowCancelDuringInstall=yes

这对于简单场景非常有用;您可以使用此程序来代替上述程序。

您在何种情况下使用此程序?CurPageChanged?我在自定义按钮的事件处理程序中使用它。我想禁用“下一步”按钮,这样用户就不能点击它。你能在开始文章中发布一些InnoSetup脚本吗?代码应该可以工作,但这取决于您放置代码的位置。现在,在这个过程中,它可能根本就不会被调用或调用。谢谢!它起作用了!问题是,在将“Enabled”设置为“False”后,我使用了TOutputProgressWizardPage,它更改了“下一步”按钮的状态。(假设)MSI要求已被删除对不起,it人员“删除”了什么?“删除”表示不再需要。您的安装不必基于Windows Installer来通过Windows徽标要求。我想说的是,强制
向导表单
重新绘制自身(即
向导表单.Update
行)是没有必要的,即使您已经回答了如何禁用取消按钮,我也会向您投赞成票。是的,您可能是对的;这真是太过分了!有时我只是用双击来确定!我想Java Swing repaint()仍然困扰着我。。。但是,如果您想在
CurPageChanged()
之外使用此选项,则必须
WizardForm.Update否则按钮将不会刷新。