如何在 inno setup 中刷新页面

how to refresh a page in inno setup

我对 inno 设置完全陌生。

我有一个现有的 inno 设置代码,它在 InitializeWizard() 中加载所有页面。我正在尝试根据上一页中选择的单选按钮在下一页中动态更改标题。

 ExpandConstant('Special note for the Microsoft ' + SelectedSQLServerVersion + ' Setup')

这里的 SelectedSQLServerVersion 是一个变量,它保存了上一页的动态值,我可以在日志中看到该值。我尝试再次加载该页面,并期待该变量将在第二次被动态值替换,但它是空的。有什么办法可以解决这个问题。

提前致谢, 播音员

向导页面有两个用于顶部栏标签的通用属性,Caption and Description. In your case you can update them e.g. when the page is just displayed, from the CurPageChanged 事件:

[Setup]
AppName=My Program
AppVersion=1.5
DefaultDirName={pf}\My Program

[Code]
var
  MyPage: TWizardPage;

procedure InitializeWizard;
begin
  MyPage := CreateCustomPage(wpWelcome, 'Caption', 'Description');
end;

procedure CurPageChanged(CurPageID: Integer);
begin
  if CurPageID = MyPage.ID then
  begin
    MyPage.Caption := 'New caption';
    MyPage.Description := 'New description';
  end;
end;