Inno Setup使用地址栏设置BrowseForFolder对话框

时间:2016-08-09 19:38:36

标签: inno-setup

当我在Inno Setup中使用BrowseForFolder功能时,我会得到一个像这样的对话框

enter image description here

是否可以通过此地址栏获取对话框?

enter image description here

1 个答案:

答案 0 :(得分:2)

使用TInputDirWizardPageCreateInputDirPage),而不是使用BrowseForFolder功能。

该页面包含您想要的浏览对话框(实际上我假设您的第二个屏幕截图显示了此对话框)。

如果您不想添加新页面,只需创建一个假页面并将其滥用。

var
  FakePage: TInputDirWizardPage;

procedure BrowseForFolderEx(var Directory: String);
begin
  FakePage.Values[0] := Directory;
  FakePage.Buttons[0].OnClick(FakePage.Buttons[0]);
  Directory := FakePage.Values[0];
end;

procedure InitializeWizard();
begin
  FakePage :=
    CreateInputDirPage(wpWelcome, '', '', '', False, SetupMessage(msgButtonNewFolder));
  FakePage.Add('');
end;

function ShouldSkipPage(PageID: Integer): Boolean;
begin
  Result := (PageID = FakePage.ID);
end;