我的安装程序很简单,基本上就是:
- 欢迎页面
- 进度页面
- 最后一页
欢迎页面和最终页面是标准的(只需一个按钮)。 在“进度”页面上,我正在静默安装一堆其他程序。
实际的脚本是在 `[Run] 部分中安装每个程序。
问题是栏达到 100%,然后停留在那里。
我只能更改消息文本。
我想要实现的是使用 Pascal 脚本显示进度(因为它可以让我有更多的灵 active ),例如:
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
控制代码中实际进度条的位置。
关于progress-bar - 运行部分的 Inno Setup 简单进度页面,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6921254/