Inno setup CreateInputQueryPage之后需要的Inno设置操作发生在之前。为什么?

Inno setup CreateInputQueryPage之后需要的Inno设置操作发生在之前。为什么?,inno-setup,Inno Setup,运行Inno Setup内置安装程序时,我希望在CreateInputQueryPage打开并获取用户输入之前,由于CreateInputQueryPage中的选择而发生的操作。我遗漏了什么概念 是不是我需要使用NextButtonClick 下面是我的Pascal代码,它基于()中的代码: 但是MsgBox在CreateInputQueryPage之前显示。如果不发布代码,调试代码非常困难。发布你说的和我类似的代码绝对没有好处,然后我添加了类似的东西。如果您需要代码方面的帮助,请发布代码。@K

运行Inno Setup内置安装程序时,我希望在CreateInputQueryPage打开并获取用户输入之前,由于CreateInputQueryPage中的选择而发生的操作。我遗漏了什么概念

是不是我需要使用NextButtonClick

下面是我的Pascal代码,它基于()中的代码:


但是MsgBox在CreateInputQueryPage之前显示。

如果不发布代码,调试代码非常困难。发布你说的和我类似的代码绝对没有好处,然后我添加了类似的东西。如果您需要代码方面的帮助,请发布代码。@KenWhite谢谢。。。。我想我发现了一些东西,基于你的评论,我仔细检查了一下,我做了一件不同的事情。。。测试还需要一段时间,但我希望我发现了错误……或者没有……。@肯怀特·诺普仍然没有回答。我已经按照你的建议编辑了。仍然不是你的代码。发布实际代码(为保护无辜者而更改的字符串除外)*然后我添加了一些东西,比如没有告诉我们你实际添加了什么;也没有告诉我们你在哪里加的。发布您的代码。
CodeDlg.iss
示例脚本向您展示了如何正确添加页面(您似乎已经下载了该页面),还向您展示了如何正确处理该页面(您根本没有这样做-您似乎希望它在添加后立即执行)。有关如何正确处理自定义页面的示例,请参见
NextButtonClick
函数中该示例中的代码。
[Code]
procedure UserGroup;
Var  Page : TInputQueryWizardPage;
  GroupName : String;
  Message: String;
  ResultCode: Integer;
begin
  // Create page
  Page := CreateInputQueryPage(wpWelcome,
    'Users Group Required', 
    'Please specify group, then click Next',
    'A Windows security group must be created.'
    );

  // Add items (False means it's not a password edit)
  Page.Add('GroupName:', False);
  Page.Values[0] := 'SomeGroup';

  // Read values into variables
  GroupName := Page.Values[0];
  if Exec('net.exe', Format( 'localgroup %s /add',[GroupName]), '', SW_SHOW,
     ewWaitUntilTerminated, ResultCode) then
  begin
    // success 
    Message := Format('The user group %s has been added to the local machine.', [GroupName]);
    MsgBox( Message, mbInformation, MB_OK);
  end
  else begin
    // failure i
    Message := Format('The installer was not able to set up the %s security group. Please do so manually. (Inno Error Code: %i)', [GroupName, ResultCode]);
    MsgBox( Message, mbInformation, MB_OK);
  end;
end;