在检查安装程序中的先决条件时,如何显示“请稍候”窗口?

时间:2011-05-19 17:53:26

标签: inno-setup

我在脚本中的InitializeSetup函数中进行了一些检查。这些大约需要10秒钟才能完成,在此期间除了任务栏上的窗口按钮外没有显示任何内容(单击它不会产生任何结果)。我想显示一个简单的“请稍候”窗口。我怎么能这样做?

1 个答案:

答案 0 :(得分:4)

以下示例脚本显示了如何创建自定义对话框。

基本上创建自定义表单并在其上放置自定义控件。您可以将此作为起点,以便按照您的意愿显示对话框。

[Setup]
AppName='Test Date Script'
AppVerName='Test Date Script'
DefaultDirName={pf}\test

[Code]

function InitializeSetup() : boolean;
var
  DlgWait : TSetupForm;
  lblWait : TLabel;
  I : Integer;
begin
  dlgWait :=  CreateCustomForm;
  dlgWait.FormStyle := bsDialog;
  dlgWait.Position := poMainFormCenter;
  lblWait := TLabel.Create(dlgWait);
  lblWait.Parent := dlgWait;
  lblWait.Caption := 'Please Wait';
  lblWait.Visible := True;
  dlgWait.Show;
  dlgWait.Refresh; // Process the paint message

  for I := 0 to 10 do
  begin
     Sleep(1000); // Simulate Functions taking 10 sec
     dlgWait.Refresh;
  end;

  DlgWait.Free;
end;