我的安装程序非常简单,它基本上是:
欢迎页面和最终页面是标准页面(只需一个按钮).
在Progress页面,我正在静默安装一堆其他程序.
实际的脚本是在[Run]部分中安装每个程序.
问题是酒吧达到100%然后停留在那里.
我只能更改消息文本.
我想要实现的是使用Pascal脚本显示进度(因为它可以让我有更多的灵活性),例如:
procedure InitializeWizard; begin ProgressPage.SetProgress(1,100); exec(.......) ProgressPage.SetProgress(15,100); exec(.......) ProgressPage.SetProgress(40,100); ... ... end;
这样我就可以显示更准确的进度条.这就是我所拥有的(模拟安装.从一个例子中得到):
[Code] var ProgressPage: TOutputProgressWizardPage; procedure InitializeWizard; begin ProgressPage := CreateOutputProgressPage('My App',''); end; function NextButtonClick(CurPageID: Integer): Boolean; var I: Integer; begin if CurPageID = wpWelcome then begin ProgressPage.SetText('Starting installation...',''); ProgressPage.SetProgress(0,0); ProgressPage.Show; try for I := 0 to 10 do begin ProgressPage.SetProgress(I,10); Sleep(100); end; finally ProgressPage.Hide; end; end else Result := True; end;
问题是,当我构建安装程序时,它不显示欢迎页面(安装程序正在运行,但没有显示任何内容).
我做错了什么?
先谢谢你!
解决方法
您可以使用WizardForm.ProgressGauge控制代码中的实际进度条位置.