我想在setup.exe中为两台服务器创建两个授权,但我只得到一个。我使用这段代码:
[Code]
...
procedure InitializeWizard;
begin
ServerDetailsPage1:= CreateInputQueryPage(wpWelcome,
'', '', 'Please enter following data and click Next.');
ServerDetailsPage1.Add('IP Address (1)', False); {0}
ServerDetailsPage1.Add('Port Number (1)', False); {1}
ServerDetailsPage1.Add('Domain Name\User Name (1)', False); {2}
ServerDetailsPage1.Add('Password (1)', True); {3}
ServerDetailsPage1.Values[1] := '';
ServerDetailsPage1.Values[1] := '\';
ServerDetailsPage2 := CreateInputQueryPage(wpWelcome,
'', '', 'Please enter following data for SQL Server and click Next.');
ServerDetailsPage2.Add('IP Address (2)', False); {0}
ServerDetailsPage2.Add('Port Number (2)', False); {1}
ServerDetailsPage2.Add('Domain Name\User Name (2)', False); {2}
ServerDetailsPage2.Add('Password (2)', True); {3}
ServerDetailsPage2.Values[1] := '';
ServerDetailsPage2.Values[2] := '\';
end;
哪里出错?谢谢你的任何想法。
答案 0 :(得分:2)
添加CustomInputInqueryPage的方法签名:
function CreateInputQueryPage(const AfterID: Integer; const ACaption, ADescription, ASubCaption: String): TInputQueryWizardPage;
在您的情况下,您已将 wpWelcome 作为 AfterID 传递给两个页面, ServerDetailsPage1 和 ServerDetailsPage2 。
如果您想在 ServerDetailsPage1 之后显示 ServerDetailsPage2 ,请将代码更改为:
ServerDetailsPage2 := CreateInputQueryPage(ServerDetailsPage1.ID,
'', '', 'Please enter following data for SQL Server and click Next.');
答案 1 :(得分:0)
适合我。我按预期得到两页。
也许你会感到困惑,因为你得到了第二个" " first"之前的页面,因为你在" welcome"之后插入了两个页面。页。您稍后添加的页面将在页面之前插入,您首先添加该页面。
要按正确顺序排列,请在第一页之后插入第二页:
ServerDetailsPage2 := CreateInputQueryPage(ServerDetailsPage1.ID, ...);