Inno setup 使用Inno安装程序以静默方式运行安装,无需任何“下一步”按钮或“安装”按钮

Inno setup 使用Inno安装程序以静默方式运行安装,无需任何“下一步”按钮或“安装”按钮,inno-setup,pascalscript,Inno Setup,Pascalscript,我希望我的安装应该是静默的,没有任何用户单击的“下一步”或“安装”按钮。我试图禁用所有页面仍然,我得到了“准备安装”页面。我希望避免使用此安装页面。要运行Inno安装程序中内置的安装程序,而无需与用户进行任何交互,甚至无需任何窗口,请使用: 指示设置为静默或非常静默。安装程序处于静默状态时,不会显示向导和后台窗口,但会显示安装进度窗口。当安装程序处于静默状态时,不会显示此安装进度窗口。其他一切正常,例如安装过程中显示错误消息,启动提示为(如果您没有使用DisableStartupPrompt或上

我希望我的安装应该是静默的,没有任何用户单击的“下一步”或“安装”按钮。我试图禁用所有页面仍然,我得到了“准备安装”页面。我希望避免使用此安装页面。

要运行Inno安装程序中内置的安装程序,而无需与用户进行任何交互,甚至无需任何窗口,请使用:

指示设置为静默或非常静默。安装程序处于静默状态时,不会显示向导和后台窗口,但会显示安装进度窗口。当安装程序处于静默状态时,不会显示此安装进度窗口。其他一切正常,例如安装过程中显示错误消息,启动提示为(如果您没有使用DisableStartupPrompt或上面解释的“/SP-”命令行选项禁用它)


您也可以考虑使用<代码> /SuffsMsgBox < /Cord>参数> < /P>


如果要使安装程序在没有任何其他命令行开关的情况下“静默”运行,可以:

  • 使用可跳过大多数页面
  • 使用计时器跳过“准备安装”页面(不能使用
    ShouldSkipPage
    跳过该页面)。您可以使用中所示的技术
[代码]
函数SetTimer(hWnd、nIDEvent、ueepress、lpTimerFunc:LongWord):LongWord;
外部的SetTimer@User32.dllstdcall';
函数KillTimer(hWnd,nidfevent:LongWord):LongWord;
外部的KillTimer@User32.dllstdcall';
变量
提交者:长词;
程序控制程序;
开始
KillTimer(0,SubmitPageTimer);
SubmitPaGetTimer:=0;
结束;
程序SubmitPageProc(H:LongWord;Msg:LongWord;IdEvent:LongWord;Time:LongWord);
开始
OnClick(WizardForm.NextButton);
KillSubmitPageTimer;
结束;
过程CurPageChanged(CurPageID:Integer);
开始
如果CurPageID=wpReady,则
开始
SubmitPageTimer:=SetTimer(0,0,100,CreateCallback(@SubmitPageProc));
结束
其他的
开始
如果SubmitPagetTimer为0,则
开始
KillSubmitPageTimer;
结束;
结束;
结束;
函数ShouldSkipPage(PageID:Integer):布尔值;
开始
结果:=真;
结束;
对于,您需要Inno设置6。如果您坚持使用Inno Setup 5,则可以使用库中的
WrapCallback
函数


另一种方法是将
CN\u命令
发送到下一步按钮,如下所示:

有关具有不同答案的类似问题,请参阅